问题场景是有个需求是要求将word文档转成pdf格式的。在windows本地环境测试是ok的,但是部署到linux上的测试环境上。转换出来的pdf文件内容中文或者表格都乱码了。
解决的办法
将windows上的字体文件放在linux上并且授权。不需要重启服务器只需要重启服务。
环境:
jdk8+springboot+centOS7+spire.doc
步骤:
1、在windows上的c:/windows/font目录中拷贝 宋体、黑体(文件名分别为simsun.ttc、simhei.ttf)到linux服务器。如果你觉得不放心可以都拷贝下去。
2、检查linux服务器/usr/share目录下存在“fonts”目录,如果不存在执行升级:
yum -y install fontconfig
3、如果无法执行则需要更新linux
yum update
4、将字体文件放入/usr/share/fonts目录中或者自己创建一个文件夹
5、对字体文件进行授权chmod -R 755 /usr/share/fonts/sim*如果自己的文件夹
6、安装字体检索工具ttmkfdir并执行命令
yum -y install
ttmkfdir ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
7、重载linux字体库
fc-cache
8、查看是否载入新字体
fc-list
9、重启后台服务