JapserReport导出PDF出现Could not load the following font错误的解决方案
年后,将年前的基于JasperReport封装的API移植到Maven工程上,问题不断,其中一个问题就是导出PDF过程中出现如下错误:
Could not load the following font : pdfFontName : STSong-Light pdfEncoding : UniGB-UCS2-H isPdfEmbedded : true
|
百度了好久没有找到答案,偶然想起之前也有解决相关iText的中文版本问题,请看这篇文章:http://cst.is-programmer.com/posts/18844.html
不过这次有点不同的就是,JasperReport4.5.0 使用的是iText2.1.7版本,分析包名是以com.lowagie开头,所以相应的iTextAsian也应该是com.lowagie.XXX的。
之前出现错误就是导出了其他版本的iTextAsian.jar(com.itextpdf.XXX)。
总之:iText和iTextAsian的包要配套起来就没问题了。
JasperReport导出PDF报表中文不显示问题
这两天,利用iReport和JasperReport做报表,发现在导出PDF的时候中文不显示,而导出HTML却显示正常,而相关的itext包也引入到项目中了。百度发现,在报表定义的时候要设置如下属性:
Font name: 宋体 (中文字体)
PDF font name: STSong-Light
PDF Encoding: UniGB-UCS2-H(Chinese Siplified)
PDF Embeded: true
如图:
设置后,问题解决。