使用java PDFRenderer打印pdf时出现问题

时间:2011-01-12 19:40:36

标签: java pdf printing pdfrenderer

我遇到了一个问题,试图在java中打印一个水晶报告,其中所有文本都被小盒子字符替换。报告blob存储在Oracle数据库中,我可以使用adobe reader预览它,并看到它是用实际文本正确形成的。此blob将传递给使用PDFRenderer打印的java applet。

我的理论是,问题在于水晶报告我们生成使用PDF版本1.2。还有许多jasper报告生成为1.4版本,并且这些报告正确打印 - 只有1.2 pdf有这个问题。

PDFRenderer不支持打印此版本,还是需要采取一些额外步骤来成功打印这些版本?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

您不太可能遇到因PDF版本而导致的问题。

特别是对于文本内容,PDF规范变得非常复杂,并且水晶报告创建内容的概率很高

  • 依赖于一些奇怪的编码
  • 使用CID(多字节)字体技术

和pdf渲染器在那里有一个盲点。

您可以尝试在报告方面使用有关

的设置
  • 编码
  • font(Type1 / TrueType9)
  • font embedding

也许你会找到一个更适合的选择。

答案 1 :(得分:0)

如果您将PDF用作查看器,PDFRenderer是否会显示PDF? PDFRenderer不支持以后的PDF版本(即压缩对象),但1.2非常简单。