共享中的在线预览word模块会将word转为pdf后再展示, 有时候pdf会出现方块乱码, 原因是linux上少了一些个字体, 比如雅黑、宋体。

命令步骤:

0. 如果安装命令可先执行安装命令操作: yum install -y fontconfig mkfontscale

1. cd /usr/share/fonts/

2. 上传字体文件

3. mkfontscale

4. mkfontdir

5. fc-cache

其他命令:

查看安装的字体: fc-list

查看安装的中文字体: fc-list :lang=zh

然后重启后台服务

一、查看系统字体

在开始安装之前,我们先查看系统中已经安装的字体。

要查看系统中已经安装的字体,我们可以使用fc-list命令进行查看。如果系统中没有该命令的话,我们需要先安装相关的软件包。

在centos上,使用如下命令进行安装:

yum install -y fontconfig mkfontscale




word转pdf 乱码 java word转换成pdf乱码_Powered by 金山文档


在ubuntu上,使用如下命令进行安装:

sudo apt-get -y install fontconfig xfonts-utils


word转pdf 乱码 java word转换成pdf乱码_Powered by 金山文档_02


安装完毕后,我们就可以使用fc-list命令查看系统中已经安装的字体。如下:

cat /etc/issue

fc-list


word转pdf 乱码 java word转换成pdf乱码_Powered by 金山文档_03


上图为centos6上,默认已经安装的字体。


word转pdf 乱码 java word转换成pdf乱码_Powered by 金山文档_04


上图为ubuntu上,默认已经安装的字体。

如果要查看系统中已经安装的中文字体,我们可以使用如下命令:

fc-list :lang=zh


word转pdf 乱码 java word转换成pdf乱码_centos_05


word转pdf 乱码 java word转换成pdf乱码_pdf_06


通过上图,我们可以看到默认情况下centos6和ubuntu是没有安装中文字体的。

二、安装字体

通过第一章节,我们知道目前系统中没有微软雅黑字体。我们现在需要把MSYH.TTF(微软雅黑字体文件)文件上传到linux服务器上。如下:


word转pdf 乱码 java word转换成pdf乱码_pdf_07


在centos上和ubuntu上安装字体方法都是一样的,我们只需要进行相关的操作即可。

把MSYH.TTF复制到/usr/share/fonts/目录下,使用如下命令:

cd /root/

cp MSYH.TTF /usr/share/fonts/


word转pdf 乱码 java word转换成pdf乱码_word转pdf 乱码 java_08


然后建立字体索引信息,更新字体缓存,使用如下命令:

cd /usr/share/fonts/

mkfontscale

mkfontdir

fc-cache


word转pdf 乱码 java word转换成pdf乱码_word转pdf 乱码 java_09


至此,字体已经安装完毕。

现在我们再来查看微软雅黑字体,是否安装成功,使用如下命令:

fc-list :lang=zh


word转pdf 乱码 java word转换成pdf乱码_pdf_10


word转pdf 乱码 java word转换成pdf乱码_Powered by 金山文档_11


通过上图,我们可以很明显的看出微软雅黑字体已经成功安装。

打印预览发现是宋体 增加了宋体字体解决


另一个问题JAVA打开的图形界面无法显示中文(方块)

1)cd $JAVA_HOME/jre/lib/fonts

2)mkdir fallback

3)cp xxx.ttc fallback #xxx.ttf代表你想要的中文字体文件

cp /usr/share/fonts/wqy-zenhei/wqy-zenhei.ttc /jdk1.5.0_22/jre/lib/fonts/fallback