版本:Jaspersoft iReport Designer 4.7.0
網上有很多文章說要去下載 iTextAsian.jar,其實這個版本里已經包含了這個包了。目錄:D:\Jaspersoft\iReport-4.7.0\ireport\modules\ext
只需將這個包包含在iReport的classpath中,然后再進行適當的設置即可。
步驟:
1:工具,選項,iReport,classpath,Add JAR,選擇上述目錄中的 iTextAsian.jar,我連iText-2.1.7.jar一起選擇了,不知道到底需不需要,反正多了沒壞處,有心的同學可以試一下。
2:在報表中,比如一個靜態文本或者文本區域,選中它,在屬性面板中“ text properties ” 分組中設置:
Font name: 宋體
PDF Embeded: √
然后預覽下導出pdf的顯示效果。
3:別急,還沒完,網上大部分文章到這里就結束了,但是如果你把報表放到你的網站中,你會發現,在網站中導出pdf時依然報錯。找不到宋體之類的。解決辦法:
將 iTextAsian.jar拷貝到WEB_INF\lib 中,然后將這個包添加到項目(網站)的Java Build Path中。到此,解決完畢。
=========================================================================
原本以為到這里就結束了,其實以上部分僅僅是解決了在windows系統下的問題,如果將開發的網站部署到linux服務器上,可能仍然會遇到以下問題:
net.sf.jasperreports.engine.util.JRFontNotFoundException: Font '宋體' is not available to the JVM. See the Javadoc for more details.
解決辦法參考我的另外一篇博客。
PS:java真蛋痛啊。