Python Tkinter 的 PDF 查看器

pythontkinterserver side programmingprogramming

Python 以其大量的库和扩展而闻名,每个库和扩展都具有不同的功能、属性和用例。为了处理 PDF 文件,Python 提供了 PyPDF2 工具包,该工具包能够处理、提取、合并多个页面、加密 PDF 文件等等。这是一个非常有用的软件包,用于管理和操作文件流(如 PDF)。使用 PyPDF2,我们将创建一个 Tkinter 应用程序,该应用程序通过要求用户从本地目录中选择并打开 PDF 文件来读取 PDF 文件。

要创建应用程序,我们将遵循下面给出的步骤 −

  • 通过在命令 Shell 中键入

    pip install PyPDF2

    来安装要求。安装后,使用 Notebook 中的 import Pypdf2 导入 Notebook 中的库。
  • 导入 filedialog 以创建一个对话框,用于从本地目录中选择文件。

  • 创建一个文本小部件并向其中添加一些菜单,如打开、清除和退出。

  • 为每个菜单定义一个函数。

  • 定义一个函数来打开文件。在此函数中,首先,我们将使用 PdfFileReader(file) 读取文件。然后,从文件中提取页面。

  • 在文本框中插入内容。

  • 定义退出菜单的函数。

示例

#导入所需的库
import PyPDF2
from tkinter import *
from tkinter import filedialog
#创建 tkinter 框架的实例
win= Tk()
#设置几何图形
win.geometry("750​​x450")
#创建文本框
text= Text(win,width= 80,height=30)
text.pack(pady=20)
#定义清除文本的函数
def clear_text():
   text.delete(1.0, END)
#定义一个函数来打开pdf文件
def open_pdf():
   file= filedialog.askopenfilename(title="Select a PDF", filetype=(("PDF    Files","*.pdf"),("All Files","*.*")))
   if file:
      #打开PDF文件
      pdf_file= PyPDF2.PdfFileReader(file)
      #选择要阅读的页面
      page= pdf_file.getPage(0)
      #获取页面内容
      content=page.extractText()
      #将内容添加到文本框
      text.insert(1.0,content)

#定义函数以退出窗口
def quit_app():
   win.destroy()
#创建菜单
my_menu= Menu(win)
win.config(menu=my_menu)
#向菜单添加下拉菜单
file_menu=Menu(my_menu,tearoff=False)
my_menu.add_cascade(label="File",menu= file_menu)
file_menu.add_command(label="Open",command=open_pdf)
file_menu.add_command(label="Clear",command=clear_text)
file_menu.add_command(label="Quit",command=quit_app)
win.mainloop()

输出

运行上述代码将显示一个功能齐全的 tkinter 应用程序。它具有打开文件、清除文件和退出以终止应用程序的功能。

单击应用程序左上角的"文件"菜单,在文本框中打开一个新的 PDF 文件。


相关文章