Linux下highcharts导出图片乱码问题

时间:2024-03-28 09:36:25

参考

https://bbs.hcharts.cn/thread-113-1-1.html

Linux下导出服务器缺少字体中文乱码问题解决办法
一、问题描述
导出服务器运行在linux系统下,导出时,中文变成很规则的矩形,而不是常规意义上的乱码,如下图。很明显,这是因为缺少中文字体导致的。
Linux下highcharts导出图片乱码问题 

二、如何查看linux是否安装中文字体
Linux下运行:fc-list :lang=zh
若没有任何输出,则可确认是因为缺少中文字体导致的乱码。


三、解决办法
Linux安装中文字体,步骤如下
1、下载中文字体文件并上传到linux  
    字体文件的获得可以通过网络下载,最简单的方法是复制windows的字体文件。
    依次打开【开始菜单】——【控制面板】——【外观和个性化】——【字体】,复制需要的字体文件,如宋体、黑体、楷体等
    将复制得到三个文件simkai.ttf、simsun.ttc、simhei.ttf上传到linux任意目录,如/tmp/fonts
Linux下highcharts导出图片乱码问题 


2、在usr/share/fonts目录下新建my_fonts,并移动上述三个字体文件到该目录,命令如下
   mkdir -p /usr/share/fonts/my_fonts
   mv /tmp/fonts/simkai.ttf /usr/share/fonts/my_fonts/
   mv /tmp/fonts/ simsun.ttc /usr/share/fonts/my_fonts/
   mv /tmp/fonts/ simhei.ttf /usr/share/fonts/my_fonts/

3、生成字体索引
   在/usr/share/fonts/my_fonts/目录下执行 mkfontscale
   执行成功后,再次执行fc-list :lang=zh,可以看到有输出,如下图
Linux下highcharts导出图片乱码问题 

至此,linux下安装中文字体完成


完成后重启应用服务器