在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
本文將探討如何使用IronPDF庫在Python中查看PDF檔案。
IronPDF 是一個強大的 Python 程式庫,讓開發人員可以以程式方式處理 PDF 檔案。 使用 IronPDF,您可以輕鬆生成、操作和提取 PDF 文件中的數據,使其成為完成各種 PDF 相關任務的多功能工具。 無論您需要從零開始創建 PDF、修改現有的 PDF,還是從 PDF 中提取內容,IronPDF 提供了一整套功能以簡化您的工作流程。
IronPDF for Python 程式庫的一些功能包括:
注意:IronPDF 會產生附有浮水印的 PDF 資料檔案。若要移除浮水印,您需要授權 IronPDF。 如果您希望使用授權版本的IronPDF,請訪問IronPDF網站以獲取授權金鑰。
在使用 IronPDF for Python 之前,有幾個先決條件:
Python 安裝:確保您的系統上已安裝 Python。 IronPDF 與 Python 3.x 版本相容,因此請確認您安裝的 Python 是相容的版本。
:InstallCmd pip install ironpdf
:InstallCmd pip install ironpdf
:InstallCmd pip install tkinter
:InstallCmd pip install tkinter
:InstallCmd pip install pillow
:InstallCmd pip install pillow
集成開發環境(IDE):使用 IDE 來處理 Python 專案可以大大提升您的開發體驗。 它提供代碼完成、調試和更精簡的工作流程等功能。 一個受歡迎的 Python 開發 IDE 是 PyCharm。 您可以從 JetBrains 網站(https://www.jetbrains.com/pycharm/)下載並安裝 PyCharm。
在安裝 PyCharm IDE 後,請按照以下步驟建立一個 PyCharm Python 專案:
啟動 PyCharm:從系統的應用程式啟動器或桌面捷徑中打開 PyCharm。
建立新專案:點擊「建立新專案」或開啟現有的 Python 專案。
PyCharm IDE
配置專案設定:為您的專案提供一個名稱並選擇位置來建立專案目錄。 選擇專案的 Python 直譯器。 然後點擊「Create」。
建立一個新的 Python 專案
首先,匯入必要的函式庫。 在這種情況下,將需要使用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
py
接下來,定義一個名為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
要從 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
現在,讓我們使用Tk()
構造函數創建主 GUI 視窗,將視窗標題設置為"Image Viewer",並將on_closing()
函數設為處理視窗關閉的協定。
window = Tk()
window.title("Image Viewer")
window.protocol("WM_DELETE_WINDOW", on_closing)
py
要顯示圖像並啟用滾動,請創建一個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
接下來,使用create_window()
在畫布中創建一個Frame
小部件,以在畫布內放置此框架來容納圖像。 (0, 0)
座標和anchor='nw'
參數確保框架從畫布的左上角開始。
frame = Frame(canvas)
canvas.create_window((0, 0), window=frame, anchor="nw")
py
接下來的步驟是使用輸入 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
輸入文件
最後,讓我們使用window.mainloop()
來運行主事件循環。 這確保圖形用戶界面視窗保持開啟並具回應性,直到用戶將其關閉為止。
window.mainloop()
py
UI 輸出
本教程探討了如何使用IronPDF庫在Python中查看PDF文檔。 它涵蓋了打開 PDF 文件並將其轉換為一系列圖像文件的步驟,然後在可滾動的畫布中顯示它們,並在應用程式關閉時處理提取圖像的清理工作。
有關 IronPDF for Python 庫的更多詳細信息,請參閱文件。
下載並安裝IronPDF for Python庫,並獲取免費試用以在商業開發中測試其完整功能。