您现在的位置是:首页 > 文章详情

解决在linux字体下的显示问题及几种办法

日期:2018-04-10点击:513

将润乾报表部署到linux系统上时,往往在报表展现时会出现一些显示问题,例如:报表没有自动换行、统计图或表头斜线上的中文变成小方框、报表导出pdf后中文出问题等。

 

出现此类问题主要为操作系统中缺少中文字体所致,由于linux系统上没有对应的中文字体,将会导致导出pdf或参与图形计算时中文乱码。解决办法主要为系统增加相应的字体。增加字体有多种方式,下面以宋体为例介绍几种比较常见的操作:

 

一、将windows系统下的字体拷贝到linux下

将WINDOWS下的C:\WINDOWS\Fonts下的SIMSUN.TTC拷贝到linux下的/usr/share/fonts/TrueType/路径下,重启linux,让系统加载该字体即可,这样就能解决绝大多数字体问题。

注意:这里放置完字体后要重启系统,让系统加载字体,否则设置无效。也可以不重启系统,通过命令强制加载字体。在终端运行命令:

 

sudomkfontscale

sudomkfontdir

sudo fc-cache –fv

 

强制更新字体缓存,这样也能够是新加入的字体生效。

 

 

二、更改jre中字体

上述方法为解决操作系统字体,由于报表是通过java计算,所以也可以更改jre中的字体,从而也能解决该问题。

找到java安装目录下的/jre/lib/fonts目录,在下新建fallback文件夹,注意此处的目录一定要为当前web服务器使用的jdk目录,将windows下的字体文件拷贝到fallback文件夹下,重启web服务器即可解决该问题。

注意:如果系统中只需要宋体,则只将宋体拷贝到该目录下,否则有可能会造成报表展现时中文不乱码,但是字体也并不是想要的宋体。

 

如果系统中需要多种字体,则还需要更改jre的字体配置文件,该文件位于jdk安装目录java_home/jre/lib目录下,名称为font.properties.zh_CN.Redhat(不同操作系统该配置文件名称可能不同),在font.properties.zh_CN.Redhat中找到

dialog.1=-misc-zysong18030-medium-r-normal *-%d-*-*-c-*-iso10646-1

把zysong18030改成我们想要的宋体simsun

filename.-misc-zysong18030-medium-r-normal *-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf

把zysong18030改为simsun;zysong.ttf改为simsun.ttc

 

然后重启web服务器,字体能正常展示。

原文链接:https://www.centoschina.cn/troubleshooting/osbug/10128.html
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章