在linux系统下java实现pdf导出汉字无法显示_转 linux 生成的PDF 所有中文 显示为空,windows下没问题...

一、查看系统字体

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

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

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

yum install -y fontconfig mkfontscale

eef067b0343e0dec8deb94bfc0a7375f.png

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

sudo apt-get -y install fontconfig xfonts-utils

c47da88d910bc15e074e661b0eee84bd.png

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

cat /etc/issue

fc-list

d59bb7adeacb1f05385b839ee106c528.png

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

ae864eeb0aba2a5d7ec47629cccd82e3.png

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

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

fc-list :lang=zh

34c32afd1b0bf399a034dba1ebafe3a0.png

47c23475a23026644230219c1570de77.png

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

二、安装字体

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

f7bc5a619a99aa0b92fa91ec718f02bc.png

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

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

cd /root/

cp MSYH.TTF /usr/share/fonts/

4e51a40b8e7a343caa8587cf740b2279.png

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

cd /usr/share/fonts/

mkfontscale

mkfontdir

fc-cache

bb9ab4a06ca4654eb65435eed8dc7112.png

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

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

fc-list :lang=zh

ce93d8629e34084a9e3f0b58cf013397.png

d9d87e7171db1623d066c48045c2602c.png

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

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

另一个问题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

即可

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值