Graphics2D在linux上使用Font字体出现乱码或者中文字无法显示的问题

Posted 教练我想打篮球

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Graphics2D在linux上使用Font字体出现乱码或者中文字无法显示的问题相关的知识,希望对你有一定的参考价值。

因为在linux上没有中文字体库。

第一步先添加中文字体

在C:\\Windows\\Fonts 盘符中找到字体文件

 

 

 我们将需要的字体拷贝出来并上传至linux服务器

在服务器/usr/share/fonts夹子中新建一个文件夹存放字体

紧接着需要修改文件夹目录的权限:

chmod -R 755 /usr/share/fonts/文件夹

接下来需要安装ttmkfdir来搜索目录中所有的字体信息,并汇总生成fonts.scale文件,输入命令:

yum -y install ttmkfdir
当看到下图的提示信息时说明已安装成功: 

 

 

然后执行ttmkfdir命令即可:

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

最后一步就是修改字体配置文件了,首先通过编辑器打开配置文件:

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

 

 

然后输入:wq保存退出,最后别忘了刷新内存中的字体缓存

fc-cache

最后重启服务器

 

以上是关于Graphics2D在linux上使用Font字体出现乱码或者中文字无法显示的问题的主要内容,如果未能解决你的问题,请参考以下文章

图形 2d Java 7 问题的开放式字体

OFFICE技术讲座:JDK绘制旋转字体的效果(水平)

为啥字体大小为 101 的 Graphics2D.drawString 的字母“o”会损坏?

在Linux上安装字体

Java awt使用font中文时 在Linux上显示乱码问题解决

Java awt使用font中文时 在Linux上显示乱码问题解决