SimpleCaptcha生成图片验证码内容为乱码
作者:互联网
转自:https://blog.csdn.net/wlwlwlwl015/article/details/51482065
前言
报表中发现有中文乱码和中文字体不整齐(重叠)的情况,首先考虑的就是操作系统是否有中文字体,
在CentOS 7中发现输入命令查看字体列表是提示命令无效:
[~]# fc-list -bash: fc-list: command not found
可以看出,不仅没有中文字体,连字体库都没有,那么接下来就记录一下在Linux CentOS 7中如何安装字体库以及中文字体。
安装字体库
在CentOS 4.x开始用fontconfig来安装字体库,所以输入以下命令即可:
yum -y install fontconfig
找到fonts路径,比如/boot/grub2/fonts
接下来就可以给我们的字体库中添加中文字体了。
添加中文字体
在CentOS中,字体库的存放位置正是上图中看到的fonts目录,所以我们首先要做的就是找到中文字体文件放到该目录下,而中文字体文件在我们的windows系统中就可以找到,
打开c盘下的Windows/Fonts目录:
这里我选择宋体和黑体,找到simsun.ttc和simhei.ttf两个,如果没有可以下载一个。
我在csdn里添加了一个下载:
https://download.csdn.net/download/tvcctv27tv/10537074
在这之前我们还需要在linux服务器中新建目录,首先在/usr/shared/fonts目录下新建一个目录chinese。
然后就是将上面的两个字体上传至/usr/shared/fonts/chinese目录下即可。
紧接着需要修改chinese目录的权限:
chmod -R 755 /usr/share/fonts/chinese
接下来需要安装ttmkfdir来搜索目录中所有的字体信息,并汇总生成fonts.scale文件,输入命令:
yum -y install ttmkfdir
当看到安装成功:
然后就是修改字体配置文件了,首先通过编辑器打开配置文件:
vi /etc/fonts/fonts.conf
可以看到一个Font list,即字体列表,在这里需要把我们添加的中文字体位置加进去:
然后输入:wq保存退出,最后别忘了刷新内存中的字体缓存,这样就不用reboot重启了:
fc-cache
这样所有的步骤就算完成了,最后再次通过fc-list看一下字体列表:
可以看到已经成功安装上了中文字体,至此安装过程就全部结束,再次查看报表可以发现中文样式和内容均已可以正常显示了。
总结
简单记录一下在CentOS 7中安装字体库以及中文字体的问题,希望对遇到同样问题的同学有所帮助。
标签:CentOS,fonts,字体库,验证码,乱码,中文字体,字体,SimpleCaptcha,目录 来源: https://blog.51cto.com/u_2870645/2851212