Jasper Reports PDF不会导出西里尔文值
我试图将jasper导出为pdf,但它没有显示西里尔值。 当我将其导出为excel时它确实显示并且输出正常,但是当我尝试导出为PDF时,它不会导出西里尔文值。 西里尔文字不是用西里尔字母书写的,它们是用西里尔字母写成的。
我用来导出的代码是:
JRExporter e = new JRPdfExporter(); e.setParameter(JRPdfExporterParameter.JASPER_PRINT, jasperPrint); e.setParameter(JRPdfExporterParameter.OUTPUT_STREAM, outStream); e.setParameter(JRPdfExporterParameter.OUTPUT_FILE_NAME, NAME);
我甚至试图在下面指出参数:
e.setParameter(JRPdfExporterParameter.CHARACTER_ENCODING, "UTF-8");
但没有成功。 有什么建议么?
Jasper报告使用iText,并且当char不以pdf呈现时,这应该是清单:
- 是否支持我的实际
.tff
( OpenType )并且字体实际上可以呈现字符。 并非所有字体都以UTF-8
呈现所有字符,请参阅如何测试我的字体是否在pdf中正确呈现? - 我是否将正确的编码传递给iText。 怀疑(或一般)使用编码
Identity-H
,建议使用较新的PDF标准,并使您能够混合使用不同的编码。 - 我的字体是否嵌入,以便如果我共享pdf,那么没有此字体的计算机可以显示内容?
我怎样才能确保这是JasperReport?
不推荐使用的方法是在textElement
上设置属性
当前未弃用的方法 v 3-6,是添加字体扩展,这可以通过使用iReport或JasperSoft Studio等工具轻松实现,这些工具可以生成字体扩展名的.jar
,以便您可以直接将它包含在类路径中 。
如何使用iReport或JasperSoft Studio生成字体扩展名.jar 。
编辑: OP的问题在清单上是1(.ttf字体无法渲染),但他肯定应该使用非弃用方法考虑2和3。