如何在导出为PDF时获得非英语支持?

时间:2016-02-24 16:21:00

标签: pdf fonts jasper-reports

我正在使用JasperReport版本6.2

我想将报告导出为PDF,但我的报告不支持与英语不同的语言(其他语言字段显示为空白),

这是我生成报告的代码

JsonDataSource ds = new JsonDataSource(JRLoader.getInputStream(jsonFile));
JasperReport jasperReport = (JasperReport)  JRLoader.loadObject(jasperFile);
parameters.put(JRParameter.REPORT_FILE_RESOLVER, new SimpleFileResolver(new File(reportDirPath)));
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, ds);
JasperExportManager.exportReportToPdfFile(jasperPrint, outputFilePath);

我使用本教程创建了一个字体扩展名:“http://community.jaspersoft.com/wiki/custom-font-font-extension

enter image description here

我导出到jar文件并添加到我的项目类路径,但所有非英文字段仍为空白

peter对此 link的评论非常有帮助,它帮助我意识到我的字体是否首先支持所需的语言

1 个答案:

答案 0 :(得分:3)

这里的问题是font(ttf)不支持该语言(使用此How can I test if my font is rendered correctly in pdf?进行测试)所以问题类似于How can I render hindi correctly when exporting to pdf?

解决方案:查找支持该语言的字体并使用font-extension。

有关如何在不同语言之间切换字体的信息,请参阅此跟进问题:Jasper report, load multiple Font Extension

//社区维基,因为我希望在低流量标签中重复但很难