代码在实现svg转png时,英文字符能正常显示,但是中文显示为方框。项目在大多数Linux系统上正常,今天在部署一个客户时出现乱码。仔细查看系统字体文件,发现没有中文字体。由于系统是客户那边自己装的,该系统安装时选择的是最小化安装,缺少字体库。
现象
安装中文字体uming.ttc
找一个有该字体的操作系统,
# cd /usr/share/fonts/
在这个目录下,有一个目录cjkuni-uming,这个目录下就有字体uming.ttc,将这个cjkuni-uming复制到缺少字体的系统的/usr/share/fonts/目录下。
然后在系统上刷新字体缓存,不需要重启Linux。
# fc-cache -f -v
如果没有这个命令,需要安装下:yum install -y fontconfig
刷新缓存后重启下我们的项目,在做转换时,乱码就没了。