如何调试损坏的pdf文件?

时间:2010-06-15 20:23:49

标签: pdf debugging corrupt adobe-reader

使用名为“prawn”的ruby库生成pdf文件。我有一个特殊的文件似乎被adobe读者认为是“腐败的”。它在预览和adobe阅读器中都很好用。它会出现如下错误:

有时我得到: “找不到名为'%s'的XObject。

我得到的奥特剧场: “找不到名为”Im4“的XObject。

然后我总是得到: “此页面上存在错误.Acrobat可能无法显示该页面 正确。请联系创建PDF文档的人员 纠正问题。“

有没有办法用某种工具打开pdf并让它告诉你pdf在技术上有什么问题?我确定我能用这样的东西快速搞清楚......

感谢 乔尔

2 个答案:

答案 0 :(得分:1)

PDF是PDF对象的转储,因此听起来像对象丢失或指向对象的引用是错误的。您可以在文本编辑器中查看PDF并查看refs表,您可以在Acrobat中看到PDF对象(我在(http://pdf.jpedal.org/java-pdf-blog/bid/10479/Viewing-PDF-objects)上写了一篇博客文章。

您最好的选择是采用像IText这样的开源工具,它可以读取PDF并添加一些调试代码,以使其显示对象结构。

答案 1 :(得分:0)

关于调试pdf的一般帖子可能也有帮助,因为那里提到了rups / pdfstreamdump等How do you debug PDF files?