ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

CENTOS 7 和 JDK 添加中文字体

2021-04-13 22:51:12  阅读:217  来源: 互联网

标签:zh JDK CENTOS fonts 中文字体 字体 usr


 

 

 

写在前面的话

 

当运维总是遇到各种奇奇怪怪的问题,比如新的 JAVA 项目上线,login 界面有个验证码,结果部署后发现,要么显示的奇奇怪怪,要么压根不显示。

或者在使用一些开源的 JAVA 项目的时候,部署之后出现乱码,然后就懵逼了。

如果你遇到这种情况,其实很多时候都是系统字体和 JDK 字体的原因,当然也不全部,比如页面编码,数据存储本身就乱码等各种问题。

这里就是给出一种解决问题的思路,希望能够帮到需要的同学!

 

 

环境说明

 

名称

版本

操作系统

CENTOS 7

JDK

7

远程工具

Xshell 5

 

 

系统添加中文字体

 

对于服务器而言,我们在安装的时候一般都是最小化安装,所以但部分都不会关注字体这方面带来的影响,这里我们执行命令看下当前系统的字体:

fc-list

效果如图:

可以从上图看到,没有任何一个中文出现,这其实就足够说明目前虚拟机是没有中文字体的,分话不多说,开始添加字体:

 

【1】在我们的 Windows 的 C:\Windows\Fonts 下面选择一个中文字体,如宋体,先拷贝到桌面,然后字体就变成了英文的:SIMSUN.TTC

 

备注:我这里只是写了 Windows 的,没有用过 Mac 系列的 ...

 

 【2】在服务器上面建立相关目录,为了便于区分,我们把目录名字叫做 zh_CN:

mkdir /usr/share/fonts/zh_CN

 

 【3】上传我们的字体到该目录下并改名为 simsun.ttf,上传可以在 CENTOS 上面 yum 安装 lrzsz,之后我们就能直接敲 rz 命令或者拖拽进行交互式上传文件了:

cd /usr/share/fonts/zh_CNmv SIMSUN.TTC simsun.ttf

 

 【4】收集系统的字体,保存到相关文件,此时会在当前目录生成 fonts.scale 文件:

yum -y install ttmkfdir
ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir

 

【5】为了不重启机器,我们手动添加配置,强迫症顺便还帮他调整了一下格式:

vi /etc/fonts/fonts.conf# 内容如下<dir>/usr/share/fonts/zh_CN</dir>

如图:

 

 【6】刷新一下 cache 在查看一下效果:

fc-cache
fc-list

如下图:

 

总结:和之前相比,明显多了两个中文的项!

 

 

给JDK添加中文字体

 

 由于 JDK 添加中文字体比较简单,这里就直接给出方法:

# 进入 JDK 的目录cd /usr/local/jdk1.7.0_79/jre/lib/fonts# 创建目录mkdir fallback
cd fallback# 将公共系统那个中文字体拷贝过来cp /usr/share/fonts/zh_CN/simsun.ttf .# 生效mkfontscale
mkfontdir

 

 执行成功后目录下面会变成这样:

到这里就配置完成,如果还有问题,可以留言我们来讨论一下!

 

标签:zh,JDK,CENTOS,fonts,中文字体,字体,usr
来源: https://blog.51cto.com/u_7605937/2704406

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有