什么是“压缩PDF”,如何阅读它?

5
我收到了“打包PDF”文件的不同版本,其中顶层PDF包含子PDF。
顶层PDF主要作为容器。在Adobe阅读器中并不总是明显看出打包情况(例如使用pdftk进行打包时,链接不会显示)。我通过搜索该术语和查阅2012年的书籍(“Whittington”,“PDF Explained”,O'Reilly)找到的信息很少。
这是否是PDF的标准部分?如果是,能否提供指针?PDFBox能否分析它?

我相信你在谈论嵌入式文件,我对PDFBox不是很熟悉,但是这里有一个例子 - Jesse Good
谢谢@Jesse。你可能是对的(你的参考链接有一个错别字,应该是http://pdfbox.apache.org/userguide/file_references.html)。我欢迎其他评论 - 看起来这个术语已经足够普及,引起了混淆。 - peter.murray.rust
这里是一种相当狡猾的嵌入文档的方式,以便Adobe Reader无法检测到它。看起来嵌入性相当脆弱或者可以被颠覆。 - peter.murray.rust
如下所述,PDF 知道嵌入的文件流以及将它们通知 PDF 阅读器的两种主要方法。为了决定 PDFBox 是否可以访问那些即使 Adobe Reader 也无法看到附加文件的有趣 PDF,请检查这些文件是如何被通知的(如果有的话!)。因此,请自行检查或提供样本进行检查。 - mkl
1个回答

2
关于您的问题,是否将PDF作为容器文件格式是PDF的标准部分:
是的,它是的。ISO 32000-1:2008在第7.11.4节中描述了它,名为“嵌入式文件流”。
最常见的是与某些文档页面相关的文件,参见12.5.6.15,“文件附件注释”,以及通过PDF文档名称字典中的EmbeddedFiles条目(PDF 1.4)与整个文档相关联的文件(请参见7.7.4,“名称字典”)。
@JesseGood在PDFBox网站上的PDF文件规范链接解释了如何处理后者。
我对PDFBox不是很了解,因此不知道它是否允许轻松访问其他类型的附件。如果不允许,则基本上必须迭代所有页面的注释以查找文件附件注释,并根据PDF规范处理内容。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接