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

Posted 一直在挖坑填坑的CountryMan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java awt使用font中文时 在Linux上显示乱码问题解决相关的知识,希望对你有一定的参考价值。

问题描述

使用Java写项目时,有时候会用到awt工具包中得font,如:
new java.awt.Font(“宋体”,Font.BOLD,13); 这在windows下可以正常显示,没有问题,但是项目写好了部署到linux上时却发现本该显示中文的地方都变成了乱码。

原因及解决办法

原因简单的说就是Linux系统中没有安装中文字体,导致jvm在选择字体时无法正常显示,详细原因可参考这篇文章
知道了问题的根因,解决起来就简单多了。解决办法就是在Linux上下载所需字体库并安装即可。最后附上我的解决过程作参考。

  1. 由于工作Linux环境不能联网,我从本地win10系统目录C:\\Windows\\Fonts下将所需要的字体打包上传到linux
  2. 解压后放到jdk/jre/lib/fonts目录下 ,搞定。

以上是关于Java awt使用font中文时 在Linux上显示乱码问题解决的主要内容,如果未能解决你的问题,请参考以下文章

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

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

java jdk-awt.font在centos上中文乱码的问题, 安装中文字体

awt.font在centos上中文乱码的问题

为啥 java.awt.Font.getStringBounds 在不同的机器上给出不同的结果?

java.awt.Font