import tkinter as tk
from tkinter import filedialog
from pdf2docx import Converter
def select_pdf_file():
# 显示选择PDF文件的文件对话框
pdf_file_path = filedialog.askopenfilename(filetypes=[("PDF文件", "*.pdf")])
pdf_file_entry.delete(0, tk.END)
pdf_file_entry.insert(0, pdf_file_path)
def select_word_file():
# 显示选择Word文件保存位置的文件对话框
word_file_path = filedialog.asksaveasfilename(defaultextension=".docx", filetypes=[("Word文件", "*.docx")])
word_file_entry.delete(0, tk.END)
word_file_entry.insert(0, word_file_path)
def convert_pdf_to_word():
# 获取输入PDF文件和输出Word文件的路径
pdf_file_path = pdf_file_entry.get()
word_file_path = word_file_entry.get()
if pdf_file_path and word_file_path:
# 将PDF转换为Word
cv = Converter(pdf_file_path)
cv.convert(word_file_path, start=0, end=None)
cv.close()
result_label.config(text=f'已将 {pdf_file_path} 转换为 {word_file_path}。')
else:
result_label.config(text="请选择文件。")
# 创建GUI窗口
window = tk.Tk()
window.title("PDF转Word")
window.geometry("400x300")
# 选择PDF文件
pdf_label = tk.Label(window, text="请选择要转换的PDF文件:")
pdf_label.pack()
pdf_file_entry = tk.Entry(window, width=40)
pdf_file_entry.pack()
pdf_button = tk.Button(window, text="浏览", command=select_pdf_file)
pdf_button.pack()
# 选择Word文件保存位置
word_label = tk.Label(window, text="请选择要保存的Word文件位置:")
word_label.pack()
word_file_entry = tk.Entry(window, width=40)
word_file_entry.pack()
word_button = tk.Button(window, text="选择保存位置", command=select_word_file)
word_button.pack()
# 转换按钮
convert_button = tk.Button(window, text="转换", command=convert_pdf_to_word)
convert_button.pack()
# 结果显示
result_label = tk.Label(window, text="", wraplength=350) # 设置wraplength以确保文本适应显示区域
result_label.pack()
# 显示GUI窗口
window.mainloop()