Python快速實(shí)現(xiàn)從PDF中提取文本與圖像坐標(biāo)的終極指南
Spire.PDF 簡介
Spire.PDF for Python 是一個(gè)功能強(qiáng)大的 PDF 處理庫,允許開發(fā)者以編程方式操作 PDF 文件。它支持提取文本、圖像、元數(shù)據(jù)等。當(dāng)我們需要獲取特定文本或圖像的坐標(biāo)時(shí),這個(gè)庫顯得尤為便捷。
安裝命令:pip install spire-pdf
坐標(biāo)系設(shè)定
在 Spire.PDF 中,坐標(biāo)系設(shè)定非常重要:
- 原點(diǎn) (0, 0) 位于頁面的左上角。
- X 軸向右延伸,Y 軸向下延伸。
理解這一點(diǎn)有助于我們更好地定位 PDF 中的元素。
獲取文本坐標(biāo)
以下是使用 Spire.PDF 提取 PDF 中指定文本坐標(biāo)的步驟:
- 創(chuàng)建 PdfDocument 對象。
- 加載 PDF 文檔。
- 獲取特定頁面。
- 創(chuàng)建 PdfTextFinder 對象并設(shè)置查找選項(xiàng)。
- 查找文本并獲取其坐標(biāo)。
下面是獲取文本坐標(biāo)的示例代碼:
from spire.pdf.common import *
from spire.pdf import *
# 創(chuàng)建 PdfDocument 對象
doc = PdfDocument()
# 加載 PDF 文檔
doc.LoadFromFile("Input.pdf")
# 獲取特定頁面
page = doc.Pages.get_Item(0)
# 創(chuàng)建 PdfTextFinder 對象
textFinder = PdfTextFinder(page)
# 指定查找選項(xiàng)
findOptions = PdfTextFindOptions()
findOptions.Parameter = TextFindParameter.WholeWord
textFinder.Options = findOptions
# 在頁面中查找字符串 "隱私政策"
findResults = textFinder.Find("隱私政策")
# 獲取查找結(jié)果中第一個(gè)實(shí)例
result = findResults[0]
# 獲取找到文本的 X/Y 坐標(biāo)
x = int(result.Positions[0].X)
y = int(result.Positions[0].Y)
print("The coordinates of the first instance of the found text are:", (x, y))
# 釋放資源
doc.Dispose()
代碼解析
PdfDocument 對象用于打開現(xiàn)有 PDF 文件。
通過 PdfTextFinder 可以輕松找到指定文本,設(shè)置的查找選項(xiàng)允許忽略大小寫并確保匹配完整單詞。
最后,通過 result.Positions 獲取文本坐標(biāo),其中 (0, 0) 表示頁面的左上角。
獲取圖片坐標(biāo)
獲取圖像坐標(biāo)的過程與文本提取類似,但使用 PdfImageHelper 處理圖像信息。以下是示例代碼:
from spire.pdf.common import *
from spire.pdf import *
# 創(chuàng)建 PdfDocument 對象
doc = PdfDocument()
# 加載 PDF 文檔
doc.LoadFromFile("Input.pdf")
# 獲取特定頁面
page = doc.Pages.get_Item(0)
# 創(chuàng)建 PdfImageHelper 對象
imageHelper = PdfImageHelper()
# 獲取頁面中的圖像信息
imageInformation = imageHelper.GetImagesInfo(page)
# 獲取指定圖像的 X/Y 坐標(biāo)
x = int(imageInformation[0].Bounds.X)
y = int(imageInformation[0].Bounds.Y)
print("The coordinates of the specified image are:", (x, y))
# 釋放資源
doc.Dispose()
代碼解析
使用 PdfImageHelper 類來獲取特定頁面上的所有圖像信息。
通過 imageInformation 對象獲取圖像的邊界坐標(biāo)(X, Y),便于后續(xù)處理。
總結(jié)
本文介紹了如何使用 Spire.PDF for Python 提取 PDF 中文本及圖像的坐標(biāo),并提供了相關(guān)示例代碼。無論是在信息提取、數(shù)據(jù)分析,還是文檔處理方面,掌握這些技術(shù)都將極大提升你的工作效率。希望這篇博客能幫助你快速上手 PDF 坐標(biāo)提取的相關(guān)操作!
到此這篇關(guān)于Python快速實(shí)現(xiàn)從PDF中提取文本與圖像坐標(biāo)的終極指南的文章就介紹到這了,更多相關(guān)Python提取PDF文本與圖像坐標(biāo)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python借助 Spire.PDF for Python提取PDF圖片的終極指南
- Python實(shí)現(xiàn)快速從指定頁面PDF中提取文本
- Python提取PDF表格數(shù)據(jù)并導(dǎo)出為TXT、Excel?格式
- Python使用PDFPlumber提取PDF內(nèi)容的操作指南
- 使用Python將PDF表格自動(dòng)提取并寫入Word文檔表格
- 使用Python提取和讀取PDF文件中的內(nèi)容全方案與示例代碼
- Python一站式進(jìn)行提取文檔內(nèi)容(Word、Excel、PDF 和PPT)
- Python使用OCR實(shí)現(xiàn)提取掃描PDF的文本
相關(guān)文章
Python采集某網(wǎng)站文檔并保存word格式的示例
這篇文章主要介紹了Python采集某網(wǎng)站文檔并保存word格式的示例,我們平常需要下載文檔的時(shí)候,是不是發(fā)現(xiàn),要么不能下載,要么不能復(fù)制,那么我們今天來分享一下,如何用Python將這些不給下載的文檔給批量下載下來,需要的朋友可以參考下2023-07-07
Python scrapy增量爬取實(shí)例及實(shí)現(xiàn)過程解析
這篇文章主要介紹了Python scrapy增量爬取實(shí)例及實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
python通過定義一個(gè)類實(shí)例作為ftp回調(diào)方法
這篇文章主要介紹了python通過定義一個(gè)類實(shí)例作為ftp回調(diào)方法,涉及Python中類與回調(diào)方法的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-05-05
Python使用WebSocket和SSE實(shí)現(xiàn)HTTP服務(wù)器消息推送方式
本文介紹了兩種實(shí)時(shí)數(shù)據(jù)獲取的技術(shù):WebSocket和SSE,WebSocket是全雙工通信協(xié)議,支持雙向通信,但需要專門定義數(shù)據(jù)協(xié)議,SSE是一種單工通信技術(shù),基于HTTP的流式數(shù)據(jù)傳輸,客戶端開發(fā)簡單,但只能單工通信2024-11-11
Python 2.6.6升級到Python2.7.15的詳細(xì)步驟
這篇文章主要介紹了Python 2.6.6升級到Python2.7.15的詳細(xì)步驟,本文分步驟給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12

