在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
本文将探讨如何使用 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 tkinter
:InstallCmd pip install pillow
集成开发环境(IDE):使用集成开发环境来处理 Python 项目可以大大提高您的开发体验。 它提供了代码补全、调试和更简化的工作流程等功能。 一个受欢迎的Python开发IDE是PyCharm。 您可以从 JetBrains 网站下载并安装 PyCharm([https://www.jetbrains.com/pycharm/**](https://www.jetbrains.com/pycharm/)).
安装 PyCharm IDE 后,按照以下步骤创建 PyCharm Python 项目:
启动 PyCharm: 通过系统的应用程序启动器或桌面快捷方式打开 PyCharm。
创建新项目: 点击 "创建新项目 "或打开现有的 Python 项目。
PyCharm IDE
配置项目设置: 提供项目名称并选择创建项目目录的位置。 为您的项目选择 Python 解释器。 然后点击 "创建"。
创建一个新的 Python 项目
首先,导入必要的库。 在这种情况下,需要使用 os
, shutil
, ironpdf
, tkinter
和 PIL
库。 os "和 "shutil "库用于文件和文件夹操作,"IronPdf "是处理 PDF 文件的库,"tkinter "用于创建图形用户界面(图形用户界面)而 PIL 则用于图像处理。
import os
import shutil
import ironpdf
from tkinter import *
from PIL import Image, ImageTk
接下来,定义一个名为 "convert_pdf_to_images "的函数。 该功能将 PDF 文件的路径作为输入。 在函数内部,IronPDF 库用于从文件中加载 PDF 文档。然后指定一个文件夹路径来存储提取的图像文件。 IronPDF 的 pdf.RasterizeToImageFiles
方法用于将 PDF 的每个 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
要从 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)
现在,让我们使用 `Tk()通过将窗口标题设置为 "Image Viewer",并将 "on_closing "设置为 "on_closing",我们可以创建一个 "Image Viewer "构造函数。()函数作为处理窗口关闭的协议。
window = Tk()
window.title("Image Viewer")
window.protocol("WM_DELETE_WINDOW", on_closing)
要显示图像并启用滚动功能,请创建一个 Canvas
widget。 Canvas "小部件被配置为填充可用空间,并使用 "pack(side=LEFT, fill=BOTH, expand=True)`. 此外,创建一个 "滚动条 "部件,并对其进行配置,以控制所有页面和画布的垂直滚动。
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"))
接下来,使用 create_window
在画布内创建一个 Frame
widget 来放置图像。()在画布中放置框架。 The (0, 0)坐标和
anchor='nw'` 参数确保帧从画布的左上角开始。
frame = Frame(canvas)
canvas.create_window((0, 0), window=frame, anchor="nw")
下一步是调用 convert_pdf_to_images()输入 PDF 文件路径名的
函数。该函数将 PDF 页面提取为图像,并返回图像路径列表。 通过迭代图片路径,并使用 Image.open' 加载每张图片()使用 PIL 库中的
ImageTk.PhotoImage方法,创建一个
PhotoImage对象。()
. 然后创建一个 Label
widget 来显示图片。
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)
输入文件
最后,让我们使用 window.mainloop 运行主事件循环()
. 这将确保图形用户界面窗口保持打开和响应状态,直到用户关闭为止。
window.mainloop()
用户界面输出
本教程探讨了如何在 Python 中使用IronPDF图书馆 它涵盖了打开 PDF 文件并将其转换为一系列图像文件,然后将其显示在可滚动画布中,以及在应用程序关闭时处理已提取图像的清理工作所需的步骤。
有关 IronPDF for Python 库的更多详情,请参阅 IronPDF for Python 库。文献资料.
下载和安装IronPDF for Python图书馆,并获得免费试用以测试其在商业开发中的完整功能。