天天看點

jasperreports導出的excel打開時提示修複,點選修複後設定的邊框效果丢失

最近用jasperreports導出excel,在jrxml模闆裡設定了邊框,導出pdf沒有任何問題顯示正常,導出的excel檔案打開時遇到如下畫面,提示要恢複,點是之後發現設定的邊框線效果丢失。

jasperreports導出的excel打開時提示修複,點選修複後設定的邊框效果丢失

一度懷疑是jasperreports的問題,後來才發現因為pdf中要輸出中文,在font裡設定指向本地位址的simsun.ttc。設定雖解決了中文不顯示問題,但卻幹擾到了excel導出,導緻邊框樣式丢失。

下面劃重點:千萬不要在jrxml裡用如下圖方式設定字型,推薦下載下傳jasperreports-fonts源碼(https://sourceforge.net/projects/jasperreports/files/jasperreports/),在jasperreports-fonts定義和擴充。然後導出jasperreports-fonts的jar包安裝到本地maven庫,然後在需要的地方引入。具體作法網上有教程(https://blog.csdn.net/qq_24084925/article/details/60469894  或者 https://www.jianshu.com/p/8dba0bb2f5dd)。

jasperreports導出的excel打開時提示修複,點選修複後設定的邊框效果丢失

采用正确的方式設定字型後,導出的excel打開不再提示要修複,jrxml裡設定的邊框樣式在導出的pdf和excel裡都顯示出來了。

jasperreports導出的excel打開時提示修複,點選修複後設定的邊框效果丢失