.NET 6 WTM layui发布到Linux CentOS 验证码不显示问题解决办法
2022-08-03为了更好的支持跨平台.NET 6框架放弃了原来的System.Drawing绘图的支持,转而使用第三方的SixLabors这个绘图库,画验证码所用的字体是 Arial,wtm6.0.4采用的字体是Times New Roman 因此 部署的时候 就注意下下版本号,把两种字体都在centos里安装上。
1、fc-list查看系统已安装字体
如果提示命令无效,不仅没有中文字体,连字体库都没有,那么接下来就记录一下在Linux CentOS中如何安装字体库以及中文字体。
2、安装字体库
yum -y install fontconfig
这时在/usr/shared目录就可以看到fonts和fontconfig这两个目录:
3、从windows查找安装字体
打开C:\Windows\Fonts目录,找到目标字体(Arial和Times New Roman)是一堆ttf文件 复制到桌面
4、上传安装字体
在/usr/shared/fonts目录下新建一个目录chinese文件,并赋予可读可写权限, 把目标文件上传至/usr/share/fonts/chinese/
#刷新字体
fc-cache
#查看字体列表
fc-list
到此一般就可以显示验证码了
如果以上步骤不生效,先重启服务器重新,还不行执行下面操作
apt-get install -y ttmkfdir
ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
vim /etc/fonts/fonts.conf
添加
fc-cache
fc-list
参考https://blog.csdn.net/sxy_student/article/details/124391299