如何解决文档属性 (PDF) 中的“已创建”和“已修改”字段未显示
目前我已将许多 PDF 合并在一起以创建一个 PDF。我添加了元数据信息,其中包括“创建”和“修改”两个字段,但结果这些字段仍然不显示信息。 这是我的源代码:
import re
import os
import fitz
from datetime import datetime
def importMetaData(path):
regex = r"^r20ut(\d+)ej(\d+)$"
r_UM = re.compile(regex)
extension = [".pdf"]
Now = datetime.Now() # current date and time
date_time = Now.strftime("%m/%d/%Y %H:%M:%s %p")
print("date and time:",date_time)
Number = ""
for root,dirs,files in os.walk(path):
for file in files:
ext = os.path.splitext(file)[-1].lower()
f_name = os.path.splitext(file)[0]
if ext in extension:
if r_UM.search(f_name) is not None:
if root.endswith("thuan1"):
Number = dictRNumber["code1"]
elif root.endswith("thuan2"):
Number = dictRNumber["code2"]
else:
continue
inforPDF=fitz.open(os.path.join(root,file))
inforPDF.set_Metadata({})
inforPDF.set_Metadata(
{
"producer": "Microsoft® Word for Office 365","author": "Thuan","modDate": date_time,"title": "Data Analysis","creationDate": date_time,"creator": "Microsoft® Word for Office 365","subject": Number
})
inforPDF.save(os.path.join(root,f_name+".pdf"))
你能给我一些建议吗?
解决方法
我是 PyMuPDF 的维护者。
确实没有必要先清除元数据,然后才能填充最终所需的值。
更重要的是,有一种特定于 PDF 的日期时间格式必须使用以确保所有 PDF 查看者都能理解它:D:20210207070439-03'00'
。
此外,PyMuPDF 中有一个函数可以为当前时间戳提供正确的值:fitz.getPDFnow()
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。