我正在寻找一个PDF元数据编辑器的免费软件,可以改变PDF文档的放大,在默认情况下,它是设置为“适合一整页”。这可以通过Acrobat通过"Document“窗口中的”初始视图“选项卡和虽然我已经找到了很多免费的方法来编辑PDF元数据来实现,不知怎么的,这个选项在他们身上是不可用的。
发布于 2022-05-15 12:04:39
一种选择是使用Python编程语言,特别是PyPDF2 2库,它也可以用于编写PDF文件的元数据。
在堆栈溢出的本题的启发下,我在谷歌上搜索正确的元数据选项。后来,我从这里中发现,这些可能是正确的:
因此,我构建了一个基本脚本,该脚本可以将“放大率”设置为原始PDF文件副本中的特定值(PyPDF2不能直接写入文件,因为您可以在上面的主题中阅读):
# after installed module with for example: python -m pip install PyPDF2
from PyPDF2 import PdfFileReader, PdfFileMerger
file_in = open('temp.pdf', 'rb')
pdf = PdfFileReader(file_in)
pdf.documentInfo
为我的测试PDF文件打印这些值:
{'/CreationDate':'D:19960725144744',‘/生产者’:'Acrobat Distiller 2.1 for Power Macintosh','/Creator':'FrameMaker 5.1','/Title':'Acrobat Reader 3.0在线指南‘,'/Subject':’帮助‘,’/作者‘:'Adobe’,‘/关键字’:'Reader,Acrobat,help,联机向导‘,'/ModDate':'D:19960725150342'}
metadata = pdf.getDocumentInfo()
pdf_final = PdfFileMerger()
pdf_final.append(file_in)
pdf_final.addMetadata(metadata)
pdf_final.addMetadata({'/Magnification': '100%'})
file_out = open('new.pdf', 'wb')
pdf_final.write(file_out)
file_in.close()
file_out.close()
# now check out metadata of the pdf copy
result = PdfFileReader(str('new.pdf'))
result.documentInfo
其结果是:
{‘/生产者’:'Acrobat Distiller 2.1 for Power Macintosh','/NeedAppearances':,'/CreationDate':'D:19960725144744','/Creator':'FrameMaker 5.1',‘/标题’:'Acrobat Reader 3.0在线指南‘,'/Subject':’帮助‘,’/作者‘,’/关键字‘:’阅读器,Acrobat,帮助,在线指南‘,'/ModDate':'D:19960725150342',‘/放大’:'100%'}
这意味着放大参数保留在PDF文件的副本中,但我不能测试它,因为Adobe的免费版本没有在文档属性中提供“初始视图”选项卡。此外,如果您通过有关在特定缩放级别打开PDF的主题.运行,您可能无法确定您的PDF浏览器是否尊重此设置(如果您使用的不是Acrobat )。
你能自己试试吗?如果成功,可以告诉我吗?
https://softwarerecs.stackexchange.com/questions/82965
复制相似问题