如何在此代码中编写将 Docx 转换为 PDF 的代码?

How to make code of converting Docx to PDF in this code?

import aspose.slides as slides    
import time
from tkinter import filedialog, Tk
import os
import aspose.words as aw

root = Tk()
files = filedialog.askopenfilenames(parent = root, title = "Choose files")
files = root.tk.splitlist(files)
start = time.time()
for f in files:
    ext = os.path.splitext(f)
    if ext == ".ppt":
        pres = slides.Presentation(f)
        pres.save(f+".pdf", slides.export.SaveFormat.PDF)
    elif ext == ".docx":
        doc = aw.Document(f)     #problem part
        doc.save(f+".pdf")
end = time.time()
print("Time Taken:%f secs" %(end-start))

这是ppt和docx转PDF的代码
我正在尝试让系统检查从文件对话框中选择的文件的扩展名是 pptx 还是 docx 并进行正确的处理。
但是当我尝试制作 docx 部分的代码时,将 docx 转换为 pdf 没有用。 我用不同的库尝试了多次。(docx2pdf, aspose)
有人可以帮我解决这个问题吗? 谢谢

您的程序无法运行的主要原因是它没有进入 if、elif、else 语句。

ext = os.path.splitext(f) returns 一个列表,例如 [C:\hello\filename",".docx"] but you are comparing whole list i.e if ext==".doc"`,显然 returns false。

您可以执行以下操作:

  • if ext==".docx" 更改为 if ".docx" in ext。或者,
  • if ext==".docx" 更改为 if ext[1] == ".docx"