最近用jasperreports导出excel,在jrxml模板里设置了边框,导出pdf没有任何问题显示正常,导出的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.youkuaiyun.com/qq_24084925/article/details/60469894 或者 https://www.jianshu.com/p/8dba0bb2f5dd)。

采用正确的方式设定字体后,导出的excel打开不再提示要修复,jrxml里设定的边框样式在导出的pdf和excel里都显示出来了。

本文介绍在使用JasperReports导出Excel时遇到的边框样式丢失问题及解决方案。通过调整字体设置方法,避免了Excel修复提示,并确保了PDF和Excel中边框样式的正常显示。
1064

被折叠的 条评论
为什么被折叠?



