使用IRONPDF FOR PYTHON

如何在 Python 中查看 PDF 文件

本文將探討如何使用IronPDF庫在Python中查看PDF檔案。

IronPDF - Python 函式庫

IronPDF 是一個強大的 Python 程式庫,讓開發人員可以以程式方式處理 PDF 檔案。 使用 IronPDF,您可以輕鬆生成、操作和提取 PDF 文件中的數據,使其成為完成各種 PDF 相關任務的多功能工具。 無論您需要從零開始創建 PDF、修改現有的 PDF,還是從 PDF 中提取內容,IronPDF 提供了一整套功能以簡化您的工作流程。

IronPDF for Python 程式庫的一些功能包括:

先決條件

在使用 IronPDF for Python 之前,有幾個先決條件:

  1. Python 安裝:確保您的系統上已安裝 Python。 IronPDF 與 Python 3.x 版本相容,因此請確認您安裝的 Python 是相容的版本。

  2. IronPDF Library:安裝 IronPDF 庫以使用其功能。 您可以使用 Python 套件管理器(pip)通過在命令行介面中執行以下命令來安裝它:
    :InstallCmd pip install ironpdf
    :InstallCmd pip install ironpdf
SHELL
  1. Tkinter 庫:Tkinter 是 Python 的標準 GUI 工具包。 它用於在提供的程式碼片段中建立 PDF 檢視器的圖形使用者介面。 Tkinter 通常隨 Python 預先安裝,但如果您遇到任何問題,可以使用套件管理器來安裝它:
    :InstallCmd pip install tkinter
    :InstallCmd pip install tkinter
SHELL
  1. Pillow 庫:Pillow 庫是 Python 圖像庫(PIL)的分支,提供了額外的圖像處理功能。 它用於程式碼片段中載入並顯示從 PDF 中提取的圖像。 使用套件管理器安裝 Pillow:
    :InstallCmd pip install pillow
    :InstallCmd pip install pillow
SHELL
  1. 集成開發環境(IDE):使用 IDE 來處理 Python 專案可以大大提升您的開發體驗。 它提供代碼完成、調試和更精簡的工作流程等功能。 一個受歡迎的 Python 開發 IDE 是 PyCharm。 您可以從 JetBrains 網站(https://www.jetbrains.com/pycharm/)下載並安裝 PyCharm。

  2. 文本編輯器:或者,如果您偏好使用輕量級的文本編輯器,您可以選擇任何您喜歡的文本編輯器,例如 Visual Studio Code、Sublime Text 或 Atom。 這些編輯器提供語法高亮顯示以及其他對 Python 開發有用的功能。 您也可以使用 Python 自己的 IDE 應用程式來創建 Python 腳本。

在 PyCharm 中建立 PDF 查看器專案

在安裝 PyCharm IDE 後,請按照以下步驟建立一個 PyCharm Python 專案:

  1. 啟動 PyCharm:從系統的應用程式啟動器或桌面捷徑中打開 PyCharm。

  2. 建立新專案:點擊「建立新專案」或開啟現有的 Python 專案。

    如何在 Python 中將 PDF 轉換為文本(教程),圖 1:PyCharm IDE

    PyCharm IDE

  3. 配置專案設定:為您的專案提供一個名稱並選擇位置來建立專案目錄。 選擇專案的 Python 直譯器。 然後點擊「Create」。

    如何在 Python 中將 PDF 轉換為文字(教程),圖 2:創建一個新的 Python 專案

    建立一個新的 Python 專案

  4. 建立來源檔案:PyCharm 將建立專案結構,包括主 Python 檔案和附加來源檔案的目錄。 開始撰寫程式碼並點擊運行按鈕或按下 Shift+F10 來執行腳本。

使用 IronPDF 在 Python 中檢視 PDF 文件的步驟

匯入所需的函式庫

首先,匯入必要的函式庫。 在這種情況下,將需要使用osshutilironpdftkinterPIL庫。 osshutil 庫用於檔案和資料夾操作,ironpdf 是用於處理 PDF 文件的庫,tkinter 用於創建圖形使用者介面 (GUI),而 PIL 用於影像處理。

import os
import shutil
import ironpdf
from tkinter import *
from PIL import Image, ImageTk
py
PYTHON

將 PDF 文件轉換為圖像

接下來,定義一個名為convert_pdf_to_images的函數。 此函數以 PDF 文件的路徑作為輸入。 在函式內,IronPDF 庫用於從文件中加載 PDF 文件。然後指定一個資料夾路徑來儲存提取的圖像文件。 IronPDF 的 pdf.RasterizeToImageFiles 方法用於將每個 PDF 頁面轉換為圖像文件並將其保存在指定的文件夾中。 並且使用列表來儲存圖像路徑。 完整的程式碼範例如下:

def convert_pdf_to_images(pdf_file):
    pdf = ironpdf.PdfDocument.FromFile(pdf_file)
    # Extract all pages to a folder as image files
    folder_path = "images"
    pdf.RasterizeToImageFiles(os.path.join(folder_path, "*.png"))
    # List to store the image paths
    image_paths = []
    # Get the list of image files in the folder
    for filename in os.listdir(folder_path):
        if filename.lower().endswith((".png", ".jpg", ".jpeg", ".gif")):
            image_paths.append(os.path.join(folder_path, filename))
    return image_paths
py
PYTHON

要從 PDF 文檔中提取文本,請訪問此代碼示例頁面

處理視窗關閉

為了在應用程式視窗關閉時清理提取的影像檔,請定義一個on_closing函數。 在此功能內,使用shutil.rmtree()方法來刪除整個images資料夾。 接下來,將此函數設置為在關閉窗口時執行的協議。 以下代碼有助於完成此任務:

def on_closing():
    # Delete the images in the 'images' folder
    shutil.rmtree("images")
    window.destroy()

window.protocol("WM_DELETE_WINDOW", on_closing)
py
PYTHON

創建 GUI 視窗

現在,讓我們使用Tk()構造函數創建主 GUI 視窗,將視窗標題設置為"Image Viewer",並將on_closing()函數設為處理視窗關閉的協定。

window = Tk()
window.title("Image Viewer")
window.protocol("WM_DELETE_WINDOW", on_closing)
py
PYTHON

創建可滾動畫布

要顯示圖像並啟用滾動,請創建一個Canvas小部件。 Canvas小部件被配置為填滿可用空間,並使用pack(side=LEFT, fill=BOTH, expand=True)在兩個方向上擴展。 此外,創建一個Scrollbar小部件,並將其配置為控制所有頁面和畫布的垂直滾動。

canvas = Canvas(window)
canvas.pack(side=LEFT, fill=BOTH, expand=True)
scrollbar = Scrollbar(window, command=canvas.yview)
scrollbar.pack(side=RIGHT, fill=Y)
canvas.configure(yscrollcommand=scrollbar.set)
canvas.bind("<Configure>", lambda e: canvas.configure(
    scrollregion=canvas.bbox("all")))
canvas.bind_all("<MouseWheel>", lambda e: canvas.yview_scroll(
    int(-1*(e.delta/120)), "units"))
py
PYTHON

為圖像創建框架

接下來,使用create_window()在畫布中創建一個Frame小部件,以在畫布內放置此框架來容納圖像。 (0, 0)座標和anchor='nw'參數確保框架從畫布的左上角開始。

frame = Frame(canvas)
canvas.create_window((0, 0), window=frame, anchor="nw")
py
PYTHON

將 PDF 檔案轉換為圖像並顯示

接下來的步驟是使用輸入 PDF 文件的文件路徑名稱來調用 convert_pdf_to_images() 函數。此函數將 PDF 頁面提取為圖像,並返回圖像路徑的列表。 通過遍歷圖像路徑並使用 PIL 庫中的Image.open()方法載入每個圖像,使用ImageTk.PhotoImage()創建一個PhotoImage對象。 然後創建一個Label小部件來顯示圖像。

images = convert_pdf_to_images("input.pdf")
# Load and display the images in the Frame
for image_path in images:
    image = Image.open(image_path)
    photo = ImageTk.PhotoImage(image)
    label = Label(frame, image=photo)
    label.image = photo  # Store a reference to prevent garbage collection
    label.pack(pady=10)
py
PYTHON

如何在 Python 中將 PDF 轉換為文本 (教程),圖 3:輸入文件

輸入文件

運行 GUI 主迴圈

最後,讓我們使用window.mainloop()來運行主事件循環。 這確保圖形用戶界面視窗保持開啟並具回應性,直到用戶將其關閉為止。

window.mainloop()
py
PYTHON

如何在 Python 中將 PDF 轉換為文字(教程),圖 4:UI 輸出

UI 輸出

結論

本教程探討了如何使用IronPDF庫在Python中查看PDF文檔。 它涵蓋了打開 PDF 文件並將其轉換為一系列圖像文件的步驟,然後在可滾動的畫布中顯示它們,並在應用程式關閉時處理提取圖像的清理工作。

有關 IronPDF for Python 庫的更多詳細信息,請參閱文件

下載並安裝IronPDF for Python庫,並獲取免費試用以在商業開發中測試其完整功能。

查克尼思·賓
軟體工程師
Chaknith 致力於 IronXL 和 IronBarcode。他在 C# 和 .NET 方面擁有豐富的專業知識,協助改進軟體並支持客戶。他從用戶互動中獲得的洞察力有助於提高產品、文檔和整體體驗。
< 上一頁
如何在 Python 中從 PDF 提取文本
下一個 >
如何在 Python 中將 PDF 轉換為文本(教程)

準備開始了嗎? 版本: 2025.5 剛剛發布

查看許可證 >