我有一个PDF文件,我尝试使用PDF Renderer进行解析并遇到以下问题:
(1)某些名称树的限制定义为下限或上限为NULL。该规范并未真正说明如何处理这些内容:
(Intermediate and leaf nodes only; required) An array of two strings, specifying
the (lexically) least and greatest keys included in the Names array of a leaf
node or in the Names arrays of any leaf nodes that are descendants of an
intermediate node.
所以我基本上假设一个开放范围如果任何边界为空,如果两个限制都为空,我将尝试在名称中找到关键字。这个假设是否正确?
(2)在从(1)做出假设的同一PDF文件中,即使我正在寻找的键符合限制所定义的范围,键也不存在但必须看下面的孩子。我想这仍然是正确的?
(3)最后,仍然在同一PDF文件中,名称不遵循
key1 value1 key2 value2 ... keyn valuen
规范中定义的序列,但以值:
开头value0 key1 value1 ... keyn valuen
以值结束。所以在这种情况下,我只是跳过第一个值,冒着映射错误的风险。再说一次,对吗?
我的猜测是:
我想更改库以处理相关PDF文件,而不会破坏现有代码。
更新:为了解决这个问题,我最终决定不处理上述所有内容,而是在其他地方解决问题。在阅读大纲中的动作时,最初出现了这个问题。现在大概会忽略可能的“错误”行为。 This is the corresponding patch.