3

我正在使用 Prawn PDF 库在我的 Rails 应用程序中生成 PDF。一切正常,但在 Acrobat 或 Acrobat Reader 中打开生成的 PDF 时,会显示以下消息:

此页面存在错误。Acrobat 可能无法正确显示页面。请联系创建 PDF 文档的人员以更正问题。

Adobe 在其 Acrobat 8​​.1.3 发行说明中将此列为已修复。

1810668 打印带有图像的大文档时内存泄漏: > 当将大文档导出到 PostScript 或发送到打印机进行打印时“此页面存在错误。Acrobat 可能无法正确显示该页面。请联系创建者PDF 文档来纠正问题”可能会发生。在某些具有大量单色图像的文档中遇到此问题,但已在 8.1.3 中得到纠正。Root:修复了 8.1.2 中发现的问题。

但是我在所有当前版本的 Acrobat Professional 和 Acrobat reader 中都看到了这个问题。我的 PDF 确实在每一页上都使用了背景图像,有很多页面(通常是 75+),并且有很多透明图像,但没有什么会导致错误。此外,Mac 的预览显示没有问题,如果您在 Acrobat 错误上按“确定”,一切都很好。

我在 Acrobat Professional 中运行 Preflight 工具来检查 PDF 语法错误,没有发现任何错误,但有一些警告“不平衡的 q 和 Q 运算符”。

这是面向客户的应用程序,因此我无法更改设置以抑制 PDF 阅读器中的错误。

关于如何让错误消失的任何想法?

4

2 回答 2

1

正如马克所指出的,“q”和“Q”运算符必须在 pdf 文件中平衡。

大虾 PDF 库似乎有一个错误。我在一个未决问题的评论中发现了这一点:

几周前,我通过修补虾库本身来解决问题。此错误的根源是“不平衡 q/Q”,它仅出现在 Adob​​e Acrobat Pro 预检中。我通过在虾 PDF 生成器中添加一个额外的 \q 来修补它。

https://github.com/sandal/prawn-layout/issues#issue/25

于 2011-04-01T09:35:03.280 回答
0

这是大虾的一个错误,它应该在 0.11.1 版本中修复。

于 2011-04-07T09:11:51.243 回答