1、概述
在安装一些服务的时候,会涉及到字符编码与字体的问题,字符编码一般在数据库或代码级别设置,字体一般是在系统级别设置。如安装使用jira或confluence的时候,使用一些宏的时候经常会出现乱码的问题,还有就是程序中有中文的时候,在linux系统上总会乱码。
2、安装字体库
linux系统,一般不会安装字体,报表中发现有中文乱码和中文字体不整齐(重叠)的情况,首先考虑的就是操作系统是否有中文字体,在CentOS 7中发现输入命令查看字体列表是提示命令无效:
如果有此命令,则可以通过fc-list查看当前系统安装了那些字体:
#fc-list
如上图可以看出,不仅没有中文字体,连字体库都没有,那么接下来就记录一下在Linux CentOS 7中如何安装字体库以及中文字体。
1)安装:
#yum -y install fontconfig
如果已安装,则跳过此步
安装完成后,在/usr/share目录就可以看到fonts和linux服务器即可,在这里我选择宋体和黑体(报表中用到了这两种字体)
3)在这之前我们还需要新建目录,首先在/usr/share/fonts目录下新建一个目录chinese:
4)将上面的两个字体上传至/usr/share/fonts/chinese目录下即可:
5)修改chinese目录的权限:
chmod -R 755 /usr/share/fonts/chinese
6)安装ttmkfdir来搜索目录中所有的字体信息,并汇总生成fonts.scale文件,输入命令:
yum -y install ttmkfdir
然后执行ttmkfdir命令即可:
ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
7)修改字体配置文件了,首先通过编辑器打开配置文件:
vim /etc/fonts/fonts.conf
可以看到一个Font list,即字体列表,在这里需要把我们添加的中文字体位置加进去:
8)不用重启,刷新内存中的字体缓存使配置对系统生效
fc-cache
9)最后,还有很重要的一步,就是重启用到字体库的服务,将字体库应用到服务中去。
kill -9 24362重启服务nohup java -Dspring.config.location=application.yml -jar hotspot-casher-1.0-SNAPSHOT.jar &
10)查看字体
这样我们的字体就安装成功了,有时候我们系统出现乱码,怎么解决都还是乱码,不妨考虑考虑是否是字体库出现了问题,一点建议,仅供参考,希望我的文章对您有启发,喜欢我就关注我吧@阿里鹏