4

我正在尝试使用动态报告将报告导出为 pdf 格式,但波斯语字符未出现在 pdf 文件中。但我在 xls 文件或 jasper 查看器中没有这个问题。我已经尝试过这种方法,但它不起作用。我该怎么办?

public void toPdf(String path){
    JasperPdfExporterBuilder pdfExporter = new ExporterBuilders()
    .pdfExporter(path);
    pdfExporter.setCharacterEncoding("UTF-8");
    try {

        jasperReportBuilder.toPdf(pdfExporter);
    } catch (Exception e1) {
        logger.error("failed to create PDF", e1);
    }
}

excel导出: excel导出

碧玉查看器:

碧玉观众

PDF导出: 在此处输入图像描述

4

2 回答 2

4

我有同样的问题并设法解决它。你可以在这里按照我的回答。魔鬼就是你处理字体的方式。使用本教程并将 fonts.xml 中的编码更改为Identity-H(区分大小写!)

于 2013-12-15T08:21:50.157 回答
0

我正在使用动态 jasper API,每当我将 PDF 文件名导出到 Linux 服务器时,如果它包含像 ä 这样的德语变音符号,即使我将编码设为 UTF-8 或 ISO-8859-14、ISO-8859-,它也会发生变化15、ISO-8859-1等

导出 PDF 时,在动态 jasper API(JasperConcatenatedReportBuilder) 中将 ä 更改为 ä。

于 2016-04-06T06:35:28.487 回答