PDF 支持文档版本。这意味着当前文档可以保持完整,我们可以通过添加信息来改变文档的内容和表现形式。该功能对于验证过去数字签名中文档的外观和完整性特别有用。
为了更好地理解我的意思,请查看此文档PDF 中的数字签名 - Adobe,在图 #5 中。
我看过很多来自 pypdf 和其他 python 库的文档和示例,它们将内容添加到 PDF 文件中。但是,只要我看过所有pypdf 的示例 从一个文件中获取内容并将内容重建到另一个文件中。我们可以在不丢失或破坏最新版本的数字签名的情况下做到这一点吗?
你知道一种原始复制过去版本的方法,只是构建新的文档版本重用过去的对象吗?
或者有直接修改文档的方法吗?我的意思是,加载一个文档进行读写。
其他 pypdf / PyPDF2 例子可以参考:
正如您将看到的,它们全部重建从 PdfReader(以前称为 PdfFileReader)读取并使用 PdfWriter(以前称为 PdfFileWriter)写入的 PDF。我的意思是他们需要像这样的 PdfStamper java 类,带有一个可选的布尔值 append 参数,该参数将尊重以前的内容并逐步更新现有的 PDF。