PDF 间接引用和增量更新

标签 pdf

阅读PDF 1.7 reference ,我想知道第 99 页上的这句话:

When a consumer application read the file, it must build its cross-reference information in such a way that the most recent copy of each object is the one accessed in the file.

假设一个字典 (3 0 obj) 引用一个间接对象 4 0 R。如果您增量更新此对象以生成 4 1 obj 会怎么样?当 PDF 阅读应用程序读取 3 0 obj 的引用 4 0 R 时,但在其内部外部参照中只有关于 4 1 obj 的信息表 - 使用 4 1 obj 是否仍然正确?还是在更新间接对象时必须更新所有引用对象?

最佳答案

“PDF 32000-1:2008 - 7.3.10 间接对象”声明:

[…] Together, the combination of an object number and a generation number shall uniquely identify an indirect object. […]

如果更新对象,则不得更新世代号! 只有按照“PDF 32000-1:2008 - 7.5.4 交叉引用表”中的描述删除了对象,才会发生世代号更新:

[…] When an indirect object is deleted, its cross-reference entry shall be marked free […]. The entry’s generation number shall be incremented by 1 to indicate the generation number to be used the next time an object with that object number is created.

关于PDF 间接引用和增量更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41947004/

相关文章:

python - 在 PDF Django Weasyprint 中附加 img 文件

ruby-on-rails - 在 rails 应用程序中使用 LibreOffice 将 Doc 的前几页导出为 PDF

java - 使用Java从PDF中提取图像

javascript - 如何使用 JavaScript 在 PDF 中截取屏幕截图

python - 如何用python-poppler-qt4显示PDF?

java - 无法使用 PDFBox 将图像添加到 pdf

java - 使用 HTML jQuery 和 Java 将 PDF 存储在 mySQL DB 中

pdf - ssrs 报告查看器与导出的 pdf 页数

java - 碧 Jade 报告 : can see background image in pdf export but not in docx export

python - 如何在Python中检测和旋转图像