这里说个插曲,最近在linux(CentOS6)服务器上面发布了个Web项目,结果发现,有一处的汉字字体渲染不出来,显示的是“□□□□”。因为我的tomcat编码已经修改了URIEncoding为UTF-8,再加上其他地方都显示正常,所以排除了Tomcat编码问题,同时Linux系统编码我也改成了中文。最终度娘了不知道多少遍,据说可能跟字体有关,需要在linux上安装windows的字体,我需要的就是这个simsun.ttf字体。在linux上安装好字体,重启服务器,问题解决!
注意:simsun.ttf和simsunb.ttf字体还不是一回事,我安装了simsunb.ttf字体后依然显示不正确;另外,可能需要重启服务器才奏效。
Linux系统安装windos字体步骤如下:
1、复制字体
在“C:\Windows\Fonts”目录下找到所要安装字体,这里以“simsun.ttf”为例。如果安装的字体找不到,就去网上下载。
2、上传字体至CentOS6系统
在/usr/share/fonts目录下建立一个子目录,比如/winFonts。上传“simsun.ttf”字体至此目录。
3、进入此目录安装
cd /usr/share/fonts/winFonts
运行以下命令建立字体索引信息,更新字体缓存:
sudo mkfontscale
sudo mkfontdir
sudo fc-cache -fv
执行以下命令让字体生效
source /etc/profile
4、问题与解决
如果安装失败可以尝试更改权限:
cd /usr/share/fonts/winFonts
chmod 755 *.ttf
若提示 “ mkfontscale: command not found”,用yum安装:
yum install mkfontscale
提示 “ fc-cache: command not found”
yum install fontconfig
若需要重启服务器:
reboot
查看已安装的字体:
fc-list