在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
本文将探讨如何使用 IronPDF for Python 库在 Python 中查看 PDF 文件。
IronPDF 是一个功能强大的 Python 库,可让开发人员以编程方式处理 PDF 文件。 有了 IronPDF,您可以轻松地从 PDF 文档中生成、操作和提取数据,使其成为执行各种 PDF 相关任务的通用工具。 无论您是需要从头开始创建 PDF、修改现有 PDF 还是从 PDF 中提取内容,IronPDF 都能提供一套全面的功能来简化您的工作流程。
IronPDF for Python 库的部分功能包括
注意: IronPDF 会生成带水印的 PDF 数据文件。要移除水印,您需要为 IronPDF 进行授权。 如果您希望使用授权版本的IronPDF,请访问IronPDF网站以获取许可证密钥。
在使用 Python 版 IronPDF 之前,有几个前提条件:
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 解释器。 然后点击 "创建"。
创建一个新的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
用户界面输出
本教程探讨了如何使用IronPDF库在Python中查看PDF文档。 它涵盖了打开 PDF 文件并将其转换为一系列图像文件,然后将其显示在可滚动画布中,以及在应用程序关闭时处理已提取图像的清理工作所需的步骤。
有关IronPDF for Python库的更多详细信息,请参阅文档。
下载并安装IronPDF for Python库,还可以获取免费试用版来测试其在商业开发中的完整功能。