(本文档仅供参考)
问题现象
1.Web电子表格设置斜线格式预览报错:Caused by :java.lang.Error:Probable fatal error: No fonts found. sun.font.SunFontManager.getDefaultPhysicalFont(SunFontManager.java)
2.去掉斜线格式,普通字符预览是正常的。
问题原因
html的表格没有办法用纯代码生成斜线,所以斜线只能生成图片去代替,写了斜线后要在服务器创建图片(斜线实际上是一张图片的交叉表头展示在报表页面上),jdk底层创建图片需要读取服务器字体。除了这个,还有图形的展现以及报表的打印、导出PDF是由服务器生成的。
普通文字从浏览器所在电脑读取字体,不需要借助服务器生成图片。
解决方案:
为服务器增加字体,参考文档:电子表格打印或导出到PDF时以及图形上中文变乱码/分析报告打开乱码