总结/朱季谦

楼主最近在做公司的工作流平台,发现一个很无语的事情,Activiti5.22的流程图在Windows环境上部署,是可以正常查看的,但发布到公司的Linux服务器上后,在上面进行流程图在线部署时,发现中文都变成了方块,如下图——

 在工作流的配置文件里,是正常配置了“宋体”格式

经过一番对比,发现linux服务器上很多字体是没有的,例如“宋体”,“微软雅黑”等中文字体就没有。

 由此可知,可以有两种解决思路——

1.找到linux上存在的字体,在xml配置文件里把linux支持的字体替换原来的“宋体”

2.在linux上安装“宋体”字体;

 在linux上安装宋体字体的步骤如下:

 1.在本地Windows系统的C:\Windows\Fonts目录下,可以拿到“宋体”格式的文件simsun.ttc

2.在Linux服务器上输入echo $JAVA_HOME,找到服务器上jdk的存放路径,/usr/lib/jvm/jdk/jdk1.7.0_67

3.cd /usr/lib/jvm/jdk/jdk1.7.0_67/jre/lib/fonts可进入到jdk路径的fonts目录下, 新建一个文件夹mkdir newfont

4.将simsun.ttc文件复制到newfont文件里;

5.将字体缓存到系统中,执行以下命令:

mkfontscale(注:若无法执行该命令,可根据提示先执行或者yum install mkfontscale进行安装,然后再执行)

mkfontdir

 fc-cache -fv(执行显示fc-cache:command not found ,则需要安装#yum install fontconfig)

 安装完后,重启应用,重新部署一个新的流程图,即可正常在linux上显示”宋体“中文了

 

 

查看原文