解决在linux字体下的显示问题及几种办法
将润乾报表部署到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服务器,字体能正常展示。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Linux用户账户管理
Linux用户账户管理: 1、账户和组名:是给人看的 2、UID和GID:是给Linux看的 3、id:查看当前登录用户的UID和GID 4、当我们使用 ls -l 的时候,系统会根据 /etc/passwd 和 /etc/group 文件的内容,找到UID 和 GID对应的名称,进行显示。 5、如果随意修改了 /etc/passwd 下的用户的UID会发生什么情况 /etc/passwd:记录了Linux上的所有的账号 /etc/shadow:记录了账户对应的密码 /etc/group:记录了所有的组 (1)/etc/passwd (vim /etc/passwd 就可进入下面界面) wgs:用户名 x:早期这个部分放的是用户登入密码,现在密码放在了 /etc/shadow 中 UID:0表示系统管理员,1-999保留给系统使用的ID,1000以上给一般使用者,这里wgs就是一般使用者 GID:0表示系统管理员,1-999保留给系统使用的ID,1000以上给一般使用者,这里wgs就是一般使用者 两个冒号之间:使用者信息说明 /home/wgs:用户家目录,用户登陆时,所...
- 下一篇
Linux查进程、杀死进程
关键字: linux 查进程、杀进程、起进程 1.查进程 ps命令查找与进程相关的PID号: ps a 显示现行终端机下的所有程序,包括其他用户的程序。 ps -A 显示所有程序。 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 ps -e 此参数的效果和指定"A"参数相同。 ps e 列出程序时,显示每个程序所使用的环境变量。 ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 ps -H 显示树状结构,表示程序间的相互关系。 ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 ps s 采用程序信号的格式显示程序状况。 ps S 列出程序时,包括已中断的子程序资料。 ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。 ps u 以用户为主的格式来显示程序状况。 ps x 显示所有程序,不以终端机来区分。 最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。 ps aux | grep program_filter_word,ps...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Linux系统CentOS6、CentOS7手动修改IP地址
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,CentOS7官方镜像安装Oracle11G
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池