圖像通常與文本一起用於 PDF 文檔,這使得內容更具吸引力和詳盡性。在處理和分析 PDF 文檔時,您可能還需要提取圖像。因此,在本文中,我們將演示如何在 Python 中以編程方式處理 PDF 文件和提取圖像。分步指南和代碼示例將演示整個圖像提取過程。
從 PDF 中提取圖像的 Python 庫
要從 PDF 文件中提取圖像,我們將使用 Aspose.Words for Python。它是一個功能強大且功能豐富的庫,用於創建和操作包括 PDF 和 DOCX 在內的文本文檔。您可以使用以下 pip 命令從 PyPI 安裝庫。
> pip install aspose-words
從 PDF 中提取圖像的步驟
Aspose.Words for Python 讓您可以通過幾個簡單的步驟從 PDF 文件中提取圖像。以下是如何使用 Aspose.Words for Python 從 PDF 中提取圖像的工作流程。
- 從所需位置加載 PDF 文件。
- 將 PDF 轉換為 DOCX 格式。
- 處理 DOCX 版本的 PDF 並提取圖像
- 將每個圖像作為文件保存到所需位置。
以下部分將演示如何將上述步驟轉換為 Python 代碼並從 PDF 中提取圖像。
在 Python 中從 PDF 中提取圖像
在圖片提取的過程中,我們會先將PDF文件轉換為DOCX格式。在 DOCX 文件中,圖像由形狀節點表示。因此,我們將處理每個形狀並從中提取圖像。
以下是使用 Python 從 PDF 中提取圖像的步驟。
- 首先,使用 Document 類加載 PDF 文件。
- 然後,將 PDF 保存為 DOCX 格式並加載 PDF 文件的 DOCX 版本。
- 使用 Document.getchildnodes(NodeType.SHAPE, True) 方法將所有形狀檢索到對像中。
- 遍歷形狀並對每個形狀節點執行以下操作:
- 使用 asshape() 方法將形狀轉換為 Shape 類型。
- 使用 Shape.hasimage() 方法檢查形狀是否有圖像。
- 從形狀中提取圖像並使用 Shape.imagedata.save(string) 方法保存它。
以下代碼示例演示了使用 Python 從 PDF 文檔中提取圖像。
# 導入 Aspose.Words for Python 模塊
import aspose.words as aw
# 加載 PDF 文件並轉換為 Word DOCX 格式
pdf = aw.Document("document.pdf")
pdf.save("pdf.docx")
# 加載 PDF 的 DOCX 版本
doc = aw.Document("pdf.docx")
# 檢索所有形狀
shapes = doc.get_child_nodes(aw.NodeType.SHAPE, True)
imageIndex = 0
# 遍歷形狀
for shape in shapes :
shape = shape.as_shape()
if (shape.has_image) :
# 設置圖片文件名
imageFileName = f"Image.ExportImages.{imageIndex}_{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}"
# 保存圖片
shape.image_data.save(imageFileName)
imageIndex += 1
Python PDF 圖像提取庫 - 獲得免費許可證
您可以獲得免費的臨時許可證,以在不受評估限制的情況下從 PDF 中提取圖像。
結論
在分析 PDF 文檔時,還需要將圖像與文本一起提取。在本文中,您學習瞭如何使用 Python 從 PDF 中提取圖像。您可以簡單地安裝 Aspose.Words for Python 並將圖像提取集成到您的應用程序中。
探索 Aspose 的 PDF 圖像提取庫
Aspose.Words for Python 提供了一系列其他功能來操作文本文檔。您可以訪問 文檔 來探索有關該庫的更多信息。如果您有任何疑問,請隨時通過我們的 論壇 告訴我們。