Java 向PDF添加注释行
PDF文件的结构如下(或多或少,只是为了描述我的需求) 但是,如果我在上面列表的最后两个元素之间添加这样的Java 向PDF添加注释行,java,pdf,Java,Pdf,PDF文件的结构如下(或多或少,只是为了描述我的需求) 但是,如果我在上面列表的最后两个元素之间添加这样的%text格式的文本,PDF不会被破坏,并且PDF阅读器会忽略该行,对吗? 据我所知,PDF中的“%”与Java中的“/”相同 我想通过这种方式将一些自定义数据添加到PDF中。这可能不是最好的方法,但对我来说是最简单的方法。以后我可能会改变它,但现在我想坚持下去 问题是,首先,我假设如果这些行被添加到PDF的正确位置,PDF本身不会被破坏,其次,我想知道应该使用哪些类和方法来实现这一点 我从
%text
格式的文本,PDF不会被破坏,并且PDF阅读器会忽略该行,对吗?
据我所知,PDF中的“%”与Java中的“/”相同
我想通过这种方式将一些自定义数据添加到PDF中。这可能不是最好的方法,但对我来说是最简单的方法。以后我可能会改变它,但现在我想坚持下去
问题是,首先,我假设如果这些行被添加到PDF的正确位置,PDF本身不会被破坏,其次,我想知道应该使用哪些类和方法来实现这一点
我从普通的PDF开始,我想用我的数据丰富的PDF结束
如果我在上面列表的最后两个元素之间添加像这样的%text
格式的文本,PDF不会损坏,并且PDF阅读器会忽略该行,对吗
错了强>
首先,您给定的PDF文件结构不完整(甚至无法“描述您的需求”)。它缺少startxref
元素
startxref
的条目,该条目保存(最后一个)外部参照节的文件字节偏移量值。(最后一个外部参照节,因为PDF文件可能不仅有一个外部参照节,还有多个外部参照节。)
因此,合格的PDF阅读器应该从头开始阅读PDF文件。在那里可以找到外部参照表的位置。然后,通过读取外部参照表,他们将找到每个对象
在您的特殊情况下(您希望在所有PDF对象之后,但在外部参照表之前插入注释),您还需要调整startxref
关键字给出的数字:如果您的注释长度为55个字符(包括换行符),则将55添加到上一个值,这样您就可以了
%Header containing PDF version and two characters that ensure PDF is read properly
//objects
//cross-reference table