用pentaho 的自定义报表adhoc,生成中文的html、pdf时产生乱码,折腾了很久发现了设置字符编码的地方。
(注意 你的字体一定要符合你的编码,在使用报表生成器、和元数据生成器时)
1、html 产生页面是gb18030编码,中文是乱码
解决办法 在org/jfree/report/jfreereport.properties
加org.jfree.report.modules.output.table.html.Encoding=UTF-8
注 org/jfree/report/jfreereport.properties目录 是pentaho-reporting-engine-classic-*jar里面的目录
2、pdf中文不出来或乱码
解决办法 在org/jfree/report/modules/output/pageable/pdf/configuration.properties
加org.jfree.report.modules.output.pageable.pdf.Encoding=UTF-8,如果已经有org.jfree.report.modules.output.pageable.pdf.Encoding,可以把它值改为UTF-8