中文不顯示是一個常見問題。解決方法在網上也是五花八門。試過幾次,親測有效爲介紹的這種:
中文不顯示問題主要是jasperreports提供的font包不能爲中文格式提供支持,所以我們需要自定義一個font包,用於支持。
3.1 在studio中添加中文字體
3.1.1 以微軟雅黑爲例,首先在網上下載ttf文件。這是已打包好的fonts包 和ttf文件 點擊打開鏈接
3.1.2 在Studio中設置Font,步驟: Window -> Preferences -> Jaspersoft Studio -> Fonts
3.1.3 添加ttf文件
添加完成後,可以在選擇字體欄發現添加的字體
然後把所有的parameter字體都換成“微軟雅黑”。保存從新生成DemoReport2.jasper文件。替換項目中WebRoot下的以前asper文件。
3.2 自定義font.jar包
3.2.1 找到Jasperreports-6.4.1 的/demo/fonts/net/sf/jasperreports/fonts/dejavu目錄,將下載的微軟雅黑的字體tff文件拷貝進去。
3.2.2 然後返回上一級目錄,打開fonts.xml文件增加一個fontFamily,修改如下:
3.3.3 生成fonts.jar包
返回到最外面的fonts文件夾中,因爲我們的Jar包需要一個完整的路徑包。
Cmd調出命令行執行命令:jar cvf fonts.jar * 。生成fonts.jar包導入到項目中。
啓動tomcat,訪問servlet解決中文不顯示問題。