CentOS7安装新字体

  • 概述
  • 安装字体库
  • 安装
  • 查找所需字体
  • 创建存放字体的目录
  • 修改algerian目录的权限
  • 安装ttmkfdir来搜索目录中所有的字体信息,并汇总生成fonts.scale文件
  • 修改字体配置文件
  • 不用重启,刷新内存中的字体缓存使配置对系统生效
  • 重启用到字体库的服务,将字体库应用到服务中去。


概述

在安装一些服务的时候,会涉及到字符编码与字体的问题,字符编码一般在数据库或代码级别设置,字体一般是在系统级别设置。如安装使用jira或confluence的时候,使用一些宏的时候经常会出现乱码的问题,还有就是程序中有中文的时候,在linux系统上总会乱码。
(我是验证码需要安装所需字体)

安装字体库

linux系统,一般不会安装字体,报表中发现有中文乱码和中文字体不整齐(重叠)的情况,首先考虑的就是操作系统是否有中文字体,在CentOS 7中发现输入命令查看字体列表是提示命令无效:

centos 7 中文字体 centos7 字体安装_centos7


如果有此命令,则可以通过fc-list查看当前系统安装了那些字体

如上图可以看出,不仅没有中文字体,连字体库都没有,那么接下来就记录一下在Linux CentOS 7中如何安装字体库以及中文字体。

安装

#yum -y install fontconfig

如果已安装,则跳过此步

安装完成后,在/usr/shared目录就可以看到fonts和fontconfig目录了(之前是没有的):

centos 7 中文字体 centos7 字体安装_centos 7 中文字体_02


在CentOS中,字体库的存放位置正是上图中看到的fonts目录,所以我们首先要做的就是找到中文字体文件放到该目录下。

查找所需字体

而中文字体文件在windows系统中就可以找到,打开c盘下的Windows/Fonts目录:

centos 7 中文字体 centos7 字体安装_中文字体_03


我们只需要将我们需要的字体拷贝出来并上传至linux服务器即可,在这里我选择Algerian字体(验证码需要用)

Windows也没有的话可以从网上下载

创建存放字体的目录

新建目录,首先在/usr/shared/fonts目录下新建一个目录algerian。并将需要的字体上传至新建的目录下。

修改algerian目录的权限

chmod -R 755 /usr/share/fonts/algerian

安装ttmkfdir来搜索目录中所有的字体信息,并汇总生成fonts.scale文件

yum -y install ttmkfdir

然后执行ttmkfdir命令即可:

ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir

修改字体配置文件

修改字体配置文件了,首先通过编辑器打开配置文件
vim /etc/fonts/fonts.conf

可以看到一个Font list,即字体列表,在这里需要把我们添加的中文字体位置加进去:

centos 7 中文字体 centos7 字体安装_centos 7 中文字体_04

不用重启,刷新内存中的字体缓存使配置对系统生效

fc-cachefc-list查看是否加入字体

重启用到字体库的服务,将字体库应用到服务中去。