Page tree
Skip to end of metadata
Go to start of metadata

问题描述

Docker部署后,导出报表效果如下,报表中的中文显示为乱码。

问题定位

这个问题是由于docker方式部署,docker容器内部缺少相应的中文字体导致。


解决方法

向docker容器内部安装相应的中文字体,安装方法有多种,此处为您提供其中一种方法供参考。
(1)  将微软雅黑字体,放到Yahei文件夹中,文件夹中的字体文件,应是这三种文件:msyh.ttc,msyhbd.ttc,msyhl.ttc

(2)  然后将该文件夹上传到宿主机上,比如上传到宿主机的 /usr/share/fonts/路径,然后再通过命令将该文件夹上传到docker容器内部的/usr/share/fonts/路径(这里上传的docker容器名称为wyn)

docker cp /usr/share/fonts/Yahei/ wyn:/usr/share/fonts/


(3)  接着通过如下命令进入容器内部

docker exec -it wyn /bin/bash


(4)  进入到容器内部之后,执行如下命令安装字体,如下图提示表示安装成功。

fc-cache -fv


(5)  最后字体安装成功后,重新启动docker容器

再次导出pdf,预览效果如下,问题解决。

  • No labels