PDF 支持文档版本。这意味着当前文档可以保持原样,我们只需添加信息即可更改文档的内容和呈现方式。该功能对于验证过去数字签名中文档的外观和完整性特别有用。
为了更好地理解我的意思,请查看此文档PDF 中的数字签名 - Adobe,在图 #5 中。
我已经看到了很多来自 PyPDF2 和其他 python 库的文档和示例,这些库将内容添加到 PDF 文件中。但是,只要我看过所有使用 pyPDF2 的示例,就可以从一个文件中获取内容并将内容重新构建到另一个文件中。我们可以在不丢失或破坏最新版本的数字签名的情况下做到这一点吗?
您是否知道原始复制过去版本并仅构建新文档版本重用过去对象的方法?
还是有办法直接修改文档?我的意思是,加载一个文档进行读写。
可以找到其他 PyPDF2 示例:
正如您将看到的,它们都重建了从PdfFileReader读取的 PDF并使用PdfFileWriter写入。我的意思是他们需要类似PdfStamper java class的东西,带有一个可选的布尔附加参数,该参数将尊重以前的内容并逐步更新现有的 PDF。