使用 IRONPDF FOR PYTHON 如何在 Python 中檢視 PDF 檔案 Curtis Chau 更新:6月 22, 2025 下載 IronPDF pip 下載 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 本文將探討如何使用 IronPDF 函式庫在 Python 中檢視 PDF 檔案。 IronPDF - Python 函式庫 IronPDF是一個功能強大的 Python 庫,它使開發人員能夠以程式設計方式處理 PDF 檔案。 IronPDF 是一款功能強大的工具,可輕鬆產生、處理和提取 PDF 文件中的數據,是處理各種 PDF 相關任務的理想選擇。 無論您是需要從頭開始建立 PDF、修改現有 PDF 還是從 PDF 中提取內容,IronPDF 都提供了一套全面的功能來簡化您的工作流程。 IronPDF for Python 函式庫的一些功能包括: 使用 HTML 或 URL 從頭開始建立新的 PDF 文件 編輯現有 PDF 文件 旋轉 PDF 頁面 從 PDF 檔案中提取文字、元資料和圖像 將 PDF 檔案轉換為其他格式 使用密碼和限制保護 PDF 文件 -拆分和合併PDF文件 注意: IronPDF 產生的 PDF 資料檔案帶有浮水印。要去除浮水印,您需要購買 IronPDF 的許可。 如果您想使用 IronPDF 的授權版本,請造訪IronPDF 網站以取得授權金鑰。 先決條件 在 Python 中使用 IronPDF 之前,需要先滿足一些先決條件: Python 安裝:確保您的系統上已安裝 Python。 IronPDF 與 Python 3.x 版本相容,因此請確保您已安裝相容的 Python 版本。 IronPDF 庫:安裝 IronPDF 庫以存取其功能。 您可以使用 Python 套件管理器 ( pip ) 安裝它,只需在命令列介面中執行以下命令: pip install ironpdf pip install ironpdf SHELL Tkinter 函式庫:Tkinter 是 Python 的標準 GUI 工具包。 它用於為提供的程式碼片段中的 PDF 檢視器建立圖形使用者介面。 Tkinter 通常會隨 Python 預先安裝,但如果遇到任何問題,您可以使用套件管理器安裝它: pip install tkinter pip install tkinter SHELL Pillow 函式庫:Pillow 函式庫是 Python Imaging Library (PIL) 的一個分支,提供了額外的影像處理功能。 這段程式碼片段用於載入和顯示從 PDF 中提取的圖像。 使用軟體套件管理器安裝 Pillow: pip install pillow pip install pillow SHELL 5.整合開發環境 (IDE) :使用 IDE 處理 Python 專案可以大幅提升您的開發體驗。 它提供了程式碼自動完成、調試和更簡化的工作流程等功能。 PyCharm 是 Python 開發中一款受歡迎的 IDE。 您可以從 JetBrains 網站 ( https://www.jetbrains.com/pycharm/ ) 下載並安裝 PyCharm。 6.文字編輯器:或者,如果您喜歡使用輕量級的文字編輯器,您可以選擇任何文字編輯器,例如 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](/static-assets/pdf/blog/view-pdf-python-tutorial/view-pdf-python-tutorial-1.webp) **PyCharm IDE** 3.配置項目設定:為您的專案提供名稱,並選擇建立專案目錄的位置。 為您的專案選擇 Python 解釋器。 然後點擊"創建"。 [如何在 Python 中將 PDF 轉換為文字(教學),圖 2:建立一個新的 Python 項目](/static-assets/pdf/blog/view-pdf-python-tutorial/view-pdf-python-tutorial-2.webp) **建立一個新的 Python 項目** 4.建立原始檔案: PyCharm 將建立專案結構,包括一個主 Python 檔案和一個用於存放其他來源檔案的目錄。 開始編寫程式碼,然後按一下執行按鈕或按 Shift+F10 執行腳本。 使用 IronPDF 在 Python 中查看 PDF 檔案的步驟 導入所需的庫 首先,導入必要的庫。 在這種情況下,需要用到os 、 shutil 、 ironpdf 、 tkinter和PIL函式庫。 os和shutil程式庫用於文件和資料夾操作, ironpdf庫用於處理 PDF 文件, tkinter用於建立圖形使用者介面 (GUI),PIL 用於影像處理。 import os import shutil import ironpdf from tkinter import * from PIL import Image, ImageTk import os import shutil import ironpdf from tkinter import * from PIL import Image, ImageTk PYTHON 將 PDF 文件轉換為圖像 接下來,定義一個名為convert_pdf_to_images的函數。 此函數以 PDF 檔案的路徑作為輸入。 函數內部使用 IronPDF 庫從文件中載入 PDF 文件。然後,指定一個資料夾路徑來儲存提取的影像檔案。 IronPDF 的pdf.RasterizeToImageFiles方法用於將 PDF 的每個頁面轉換為圖像文件,並將其保存在指定的資料夾中。 使用列表來儲存影像路徑。 完整的程式碼範例如下: def convert_pdf_to_images(pdf_file): """Convert each page of a PDF file to an image.""" 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 def convert_pdf_to_images(pdf_file): """Convert each page of a PDF file to an image.""" 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 PYTHON 若要從 PDF 文件中提取文本,請造訪此程式碼範例頁面。 把手窗戶關閉 為了在應用程式視窗關閉時清理提取的圖像文件,定義一個on_closing函數。 在這個函數內部,使用shutil.rmtree()方法刪除整個images資料夾。 接下來,將此函數設定為視窗關閉時要執行的協定。 以下程式碼有助於實現該任務: def on_closing(): """Handle the window closing event by cleaning up the images.""" # Delete the images in the 'images' folder shutil.rmtree("images") window.destroy() window.protocol("WM_DELETE_WINDOW", on_closing) def on_closing(): """Handle the window closing event by cleaning up the images.""" # Delete the images in the 'images' folder shutil.rmtree("images") window.destroy() window.protocol("WM_DELETE_WINDOW", on_closing) PYTHON 建立圖形使用者介面視窗 現在,讓我們使用Tk()建構函式建立主 GUI 窗口,將視窗標題設為"影像檢視器",並將on_closing()函式設定為處理視窗關閉的協定。 window = Tk() window.title("Image Viewer") window.protocol("WM_DELETE_WINDOW", on_closing) window = Tk() window.title("Image Viewer") window.protocol("WM_DELETE_WINDOW", on_closing) 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) # Update the scrollregion to encompass the entire canvas canvas.bind("<Configure>", lambda e: canvas.configure( scrollregion=canvas.bbox("all"))) # Configure the vertical scrolling using mouse wheel canvas.bind_all("<MouseWheel>", lambda e: canvas.yview_scroll( int(-1*(e.delta/120)), "units")) 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) # Update the scrollregion to encompass the entire canvas canvas.bind("<Configure>", lambda e: canvas.configure( scrollregion=canvas.bbox("all"))) # Configure the vertical scrolling using mouse wheel canvas.bind_all("<MouseWheel>", lambda e: canvas.yview_scroll( int(-1*(e.delta/120)), "units")) PYTHON 創建圖像框架 接下來,使用create_window()在畫布內建立一個Frame小工具來容納圖片。 座標(0, 0)和anchor='nw'參數確保幀從畫布的左上角開始。 frame = Frame(canvas) canvas.create_window((0, 0), window=frame, anchor="nw") frame = Frame(canvas) canvas.create_window((0, 0), window=frame, anchor="nw") PYTHON 將 PDF 文件轉換為圖像並顯示 下一步是呼叫convert_pdf_to_images()函數,並傳入輸入 PDF 檔案的檔案路徑名。此函數會將 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) 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) PYTHON 如何在 Python 中將 PDF 轉換為文字(教學),圖 3:輸入文件 輸入檔 運行 GUI 主循環 最後,讓我們使用window.mainloop()來執行主事件循環。 這樣可以確保圖形使用者介面視窗保持開啟和回應狀態,直到使用者將其關閉。 window.mainloop() window.mainloop() PYTHON 如何在 Python 中將 PDF 轉換為文字(教學),圖 4:使用者介面輸出 使用者介面輸出 結論 本教學探討如何使用IronPDF庫在 Python 中檢視 PDF 文件。 它涵蓋了打開 PDF 文件並將其轉換為一系列圖像文件所需的步驟,然後在可滾動畫布中顯示這些圖像,以及在應用程式關閉時處理提取圖像的清理工作。 有關 IronPDF for Python 庫的更多詳細信息,請參閱文件。 下載並安裝IronPDF for Python庫,還可以獲得免費試用版,以測試其在商業開發中的完整功能。 常見問題解答 如何在 Python 中檢視 PDF 檔案? 您可以使用 IronPDF 函式庫在 Python 中檢視 PDF 檔案。它可讓您將 PDF 頁面轉換為影像,然後在使用 Tkinter 的 GUI 應用程式中顯示。 在 Python 中建立 PDF 檢視器的必要步驟為何? 要在 Python 中製作 PDF 檢視器,您需要安裝 IronPDF,使用 Tkinter 製作圖形使用者介面,並使用 Pillow 進行影像處理。使用 IronPDF 將 PDF 頁面轉換成影像,並顯示在使用 Tkinter 建立的可捲動畫布中。 如何安裝 IronPDF 以便在 Python 專案中使用? 您可以使用 pip 安裝 IronPDF,方法是在終端機或命令提示符中執行指令 pip install ironpdf。 在 Python 中建立 PDF 檢視器應用程式需要哪些函式庫? 您將需要 IronPDF 來處理 PDF,Tkinter 用於 GUI,Pillow 用於影像處理。 我可以使用 Python 從 PDF 擷取影像嗎? 是的,IronPDF 允許您從 PDF 中提取圖片,然後可使用 Pillow 圖庫進行處理或顯示。 如何在 Python 中將 PDF 頁面轉換為影像? 您可以使用 IronPDF 的功能將 PDF 頁面轉換成影像格式,然後在 Python 應用程式中操作或顯示。 如何處理 Python PDF 檢視器應用程式中的視窗關閉? 在 PDF 檢視器應用程式中,您可以透過清理擷取的影像來處理視窗關閉,並確保所有資源都被適當釋放,通常會使用 Tkinter 的事件處理函式。 如何在 Python 中保護 PDF 檔案的安全? IronPDF 提供多種選項,可在 PDF 檔案中加入密碼和使用限制,以加強 PDF 的安全性。 在 PDF 檢視應用程式中使用 Tkinter 有何優點? Tkinter 可讓您為 PDF 檢視器建立友善的圖形化介面,實現可捲動檢視以瀏覽 PDF 頁面等功能。 在 PDF 專案中使用 Pillow 的目的為何? Pillow 在 PDF 專案中用於處理影像,例如載入並顯示使用 IronPDF 從 PDF 檔案擷取的影像。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新6月 22, 2025 Scrapy in Python (How It Works For Developers) Scrapy 和 IronPDF 來了,Scrapy 是 Python 中的網路搜刮框架,而 IronPDF 則是兩個強大的函式庫,可共同優化線上資料的擷取和動態 PDF 的建立。 閱讀更多 更新7月 28, 2025 如何使用 Python 在 PDF 檔案中加入文字 這就是 IronPDF for Python 發揮作用的地方,它提供了強大的工具,可使用編程動態地在 PDF 文件中添加文本、註釋和其他元件 閱讀更多 更新6月 22, 2025 如何在 Python 中將 PDF 轉換為 PNG 本文將使用 IronPDF for Python 將 PDF 分割成 PNG 圖檔。 閱讀更多 如何使用 Python 從 PDF 擷取文字如何在 Python 中將 PDF 轉換...
更新6月 22, 2025 Scrapy in Python (How It Works For Developers) Scrapy 和 IronPDF 來了,Scrapy 是 Python 中的網路搜刮框架,而 IronPDF 則是兩個強大的函式庫,可共同優化線上資料的擷取和動態 PDF 的建立。 閱讀更多
更新7月 28, 2025 如何使用 Python 在 PDF 檔案中加入文字 這就是 IronPDF for Python 發揮作用的地方,它提供了強大的工具,可使用編程動態地在 PDF 文件中添加文本、註釋和其他元件 閱讀更多