导出 Jasper 报表 PDF 中的西里尔字母值
将 Jasper 报表导出为 PDF 时,用户可能会遇到西里尔字母无法显示的问题正确。尽管导出到 Excel 时可以准确显示字符,但还是会出现这种差异。
要解决此问题,确保使用的字体支持西里尔字符并应用正确的字符编码至关重要。
导出到时应包含以下代码参数PDF:
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");
需要注意的是,在报告必须支持西里尔字符并且必须嵌入到 PDF 中以确保在可能没有该字体的系统上正确显示已安装。
Jasper Reports 在底层使用 iText。为了确保以最佳方式处理西里尔字母,建议遵循以下清单:
已弃用的方法:
以前,可以使用以下已弃用的方法在 textElement 上设置属性:
<textElement> <font pdfFontName="" pdfEncoding="" isPdfEmbedded="" /> <paragraph lineSpacing="" /> </textElement>
未弃用的方法(v3-6):
在更新的版本中,首选方法包括添加字体扩展,可以使用 iReport 或 JasperSoft Studio 等工具生成。这些扩展允许在类路径中包含字体资源,确保正确显示西里尔字符。
以上是如何在 Jasper Reports PDF 中正确显示西里尔字母?的详细内容。更多信息请关注PHP中文网其他相关文章!