Python快速實現(xiàn)從PDF中提取文本與圖像坐標的終極指南
Spire.PDF 簡介
Spire.PDF for Python 是一個功能強大的 PDF 處理庫,允許開發(fā)者以編程方式操作 PDF 文件。它支持提取文本、圖像、元數(shù)據(jù)等。當我們需要獲取特定文本或圖像的坐標時,這個庫顯得尤為便捷。
安裝命令:pip install spire-pdf
坐標系設(shè)定
在 Spire.PDF 中,坐標系設(shè)定非常重要:
- 原點 (0, 0) 位于頁面的左上角。
- X 軸向右延伸,Y 軸向下延伸。
理解這一點有助于我們更好地定位 PDF 中的元素。
獲取文本坐標
以下是使用 Spire.PDF 提取 PDF 中指定文本坐標的步驟:
- 創(chuàng)建 PdfDocument 對象。
- 加載 PDF 文檔。
- 獲取特定頁面。
- 創(chuàng)建 PdfTextFinder 對象并設(shè)置查找選項。
- 查找文本并獲取其坐標。
下面是獲取文本坐標的示例代碼:
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)
# 指定查找選項
findOptions = PdfTextFindOptions()
findOptions.Parameter = TextFindParameter.WholeWord
textFinder.Options = findOptions
# 在頁面中查找字符串 "隱私政策"
findResults = textFinder.Find("隱私政策")
# 獲取查找結(jié)果中第一個實例
result = findResults[0]
# 獲取找到文本的 X/Y 坐標
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è)置的查找選項允許忽略大小寫并確保匹配完整單詞。
最后,通過 result.Positions 獲取文本坐標,其中 (0, 0) 表示頁面的左上角。
獲取圖片坐標
獲取圖像坐標的過程與文本提取類似,但使用 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 坐標
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 對象獲取圖像的邊界坐標(X, Y),便于后續(xù)處理。
總結(jié)
本文介紹了如何使用 Spire.PDF for Python 提取 PDF 中文本及圖像的坐標,并提供了相關(guān)示例代碼。無論是在信息提取、數(shù)據(jù)分析,還是文檔處理方面,掌握這些技術(shù)都將極大提升你的工作效率。希望這篇博客能幫助你快速上手 PDF 坐標提取的相關(guān)操作!
到此這篇關(guān)于Python快速實現(xiàn)從PDF中提取文本與圖像坐標的終極指南的文章就介紹到這了,更多相關(guān)Python提取PDF文本與圖像坐標內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python采集某網(wǎng)站文檔并保存word格式的示例
這篇文章主要介紹了Python采集某網(wǎng)站文檔并保存word格式的示例,我們平常需要下載文檔的時候,是不是發(fā)現(xiàn),要么不能下載,要么不能復制,那么我們今天來分享一下,如何用Python將這些不給下載的文檔給批量下載下來,需要的朋友可以參考下2023-07-07
Python scrapy增量爬取實例及實現(xiàn)過程解析
這篇文章主要介紹了Python scrapy增量爬取實例及實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-12-12
python通過定義一個類實例作為ftp回調(diào)方法
這篇文章主要介紹了python通過定義一個類實例作為ftp回調(diào)方法,涉及Python中類與回調(diào)方法的使用技巧,非常具有實用價值,需要的朋友可以參考下2015-05-05
Python使用WebSocket和SSE實現(xiàn)HTTP服務器消息推送方式
本文介紹了兩種實時數(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的詳細步驟
這篇文章主要介紹了Python 2.6.6升級到Python2.7.15的詳細步驟,本文分步驟給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12

