阅读PDF 1.7 reference,我想知道第99页的这句话:
当消费者应用程序读取文件时,它必须以这样的方式构建其交叉引用信息,即每个对象的最新副本是在文件中访问的副本。
让我们说一个字典(3 0 obj
)引用一个间接对象4 0 R
。如果您逐步更新此对象以生成4 1 obj
该怎么办?当PDF阅读应用程序读取4 0 R
的引用3 0 obj
,但其内部外部参照表中只有4 1 obj
的信息时 - 使用4 1 obj
是否仍然正确?或者,在更新间接对象时是否必须更新所有引用对象?
答案 0 :(得分:1)
“PDF 32000-1:2008 - 7.3.10间接对象”声明:
[...]在一起,对象编号和世代号的组合应唯一地标识间接对象。 [...]
如果您更新对象,则不得更新世代号! 只有在删除对象时才会发生世代号更新,如“PDF 32000-1:2008 - 7.5.4交叉引用表”中所述:
[...]删除间接对象时,其交叉引用条目应标记为空闲[...]。条目的世代号应加1,表示下次创建具有该对象编号的对象时使用的世代号。