activiti部署到linux后流程图不显示汉字的问题
linux和windows的字体文件一般是不一样的,默认情况下,linux的java7中一般不支持中文,activiti的动态流程图中的汉字需要java调用汉字的字库,这里需要配置一下java的汉字字库,网上查了一些办法,发现都没有效果,google到石博文博客中有篇文章介绍修改fontconfig.properties方法可以奏效。具体步骤:
1、先把windows中字体文件复制出来
选择你要的字体,点右键复制出来。
2、在java的lib目录下创建fonts文件夹,我的是:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.55.x86_64/jre/lib/fonts,将字体TTF文件复制到该目录。
3、进到lib目录下执行下面的命令
# Make font scale mkfontscale # 寻找文件中含有iso10646的行 cat fonts.scale | grep iso10646 # 会看到如下面这样的输出 wqy-microhei.ttc -misc-wenquanyi micro hei-medium-r-normal--0-0-0-0-p-0-iso10646-1
我的输出了三个字体
[root@AY140527152639851bc7Z fonts]# cat fonts.scale |grep iso10646
msyh.ttf -microsoft-microsoft yahei-medium-r-normal--0-0-0-0-p-0-iso10646-1
msyhbd.ttf -microsoft-microsoft yahei-bold-r-normal--0-0-0-0-p-0-iso10646-1
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1
4、修改fontconfig.properties文件,我的linux上没有这个文件,也没有fontconfig.properties.src文件,我是从windows的D:\jdk1.7.0\jre\lib目录下找到的,你可以参考你的java目录,将该文件改名为fontconfig.properties,复制到linux的jre的lib目录下。
5、编辑lib/fontconfig.properties文件,在version=1后面加入:
version=1
#注意等号后面的和上面cat fonts.scale |grep iso10646输出的是一样的
allfonts.chinese-arphic1=-microsoft-microsoft yahei-medium-r-normal--0-0-0-0-p-0-iso10646-1
allfonts.chinese-arphic1=-misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1
allfonts.chinese-arphic1=-microsoft-microsoft yahei-bold-r-normal--0-0-0-0-p-0-iso10646-1
在配置文件中查找sequence.allfonts,如果其后的sequence开头的行中有chinese-arphics1,可以略过此步,否则在其后面加入一行:
sequence.fallback=chinese-arphic1
然后重新启动项目就可以显示汉字了。