如何检查PDF文件,最好使用工具?
用例:我正在尝试以编程方式生成PDF文件(使用iText)。我在实现某些布局时遇到了困难,但我有PDF文件,其中的文本按照我想要的方式布局(从Word生成)。我想反向工程他们如何做到这一点。
PDF Inspector看起来不错,但我想找个适用于Windows的。
发布于 2010-08-24 14:41:32
Adobe Acrobat有一个非常酷但隐藏得很好的模式,允许你检查PDF文件。我在https://blog.idrsolutions.com/2009/04/viewing-pdf-objects/上写了一篇博客文章解释这一点
发布于 2015-04-06 23:37:24
除了其他答案中提到的基于GUI的工具外,还有一些命令行工具可以将原始PDF源代码转换为不同的表示形式,使您可以使用文本编辑器检查(现在已修改的文件)。下面的所有工具都可以在Linux、Mac OS X、其他Unix系统或Windows上运行。
qpdf (我的最爱)
使用解压(大多数)对象的流,并将ObjStm对象分解为单独的间接对象:
qpdf --qdf --object-streams=disable orig.pdf uncompressed-qpdf.pdfqpdf将自己描述为一个“对PDF文件进行结构化的、内容保留的转换”的工具。
然后只需在您喜欢的文本编辑器中打开+检查uncompressed-qpdf.pdf文件。大多数以前压缩的(因此是二进制的)字节现在将是纯文本。
mutool
还有mutool命令行工具,它与Ghostscript PDF查看器捆绑在一起(Ghostscript的姊妹产品,由同一家公司Artifex制造)。下面的命令也会解压数据流,并使它们更容易通过文本编辑器进行检查:
mutool clean -d orig.pdf uncompressed-mutool.pdfpodofouncompress
是一个用于处理PDF格式的免费软件/开放源码库,它包括一些命令行工具,包括podofouncompress。像这样使用它来解压缩PDF流:
podofouncompress orig.pdf uncompressed-podofo.pdfpeepdf.py
是一个基于Python的工具,可以帮助你浏览PDF文件。它最初的目的是研究和剖析基于PDF的恶意软件,但我发现它对调查完全良性的PDF文件的结构也很有用。
它可以交互地“浏览”PDF中包含的对象和流。
我在这里不会给出一个用法示例,只会给出一个文档链接:
pdfid.py和pdf-parser.py
pdfid.py和pdf-parser.py是用Python语言编写的两个。
他们的背景也是为了帮助探索恶意的PDF --但我发现分析良性PDF文件的结构和内容也很有用。
下面是我如何将未压缩的PDF对象5号流提取到*.dump文件中的示例:
pdf-parser.py -o 5 -f -d obj5.dump my.pdf结束语
发布于 2012-06-03 18:01:33
我在Linux中使用iText RUPS(读取和更新PDF Syntax)。因为它是用Java编写的,所以它也可以在Windows上运行。您可以在树状结构中浏览PDF文件中的所有对象。它还可以即时解码Flate编码流,使检查变得更容易。
截图如下:

https://stackoverflow.com/questions/3549541
复制相似问题