保存现有docx文档不会更改文件名

2024-09-30 16:20:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我想打开一个现有的docx文档,对其进行一些更改,然后将其另存为具有不同文件名的新文档。然后我将这个docx文件转换为pdf,并用adobeacrobatreader打开它。 但是Adobe显示给我的不是我的新文件名 this file name“MicrosoftWord-Dokument1”而不是“test”。 windows资源管理器向我显示正确的文件名。但这不是Adobe的错,因为当我打开新的docx文件并将其保存为pdf时,将显示正确的名称。 word_to_pdf函数在我看来也可以正常工作,因为当我通过此函数将“自创”docx文件转换为pdf时,也会显示正确的名称。 因此,问题可能是docx库没有正确保存新文档

import os
import comtypes.client
from docx import Document

def word_to_pdf(_in, _out):
    pdf_format_key = 17
    file_in = os.path.abspath(_in)
    file_out = os.path.abspath(_out)
    worddoc = comtypes.client.CreateObject("Word.Application")
    doctemp = worddoc.Documents.Open(file_in)
    doctemp.SaveAs(file_out, FileFormat=pdf_format_key)
    doctemp.close()
    worddoc.Quit()


doc = Document("C:/Users/myname/Desktop/20210501.docx")
doc.save("test.docx")
word_to_pdf("test.docx", "test.pdf")

Tags: 文件toin文档testimportpdfos