JDK11及以上版本运行IntelliJ时字体显示模糊该如何解决?
修复OpenJDK 11+ 环境下IntelliJ字体显示异常方案
前置操作
先删除你之前手动复制到JDK11 lib 目录下的freetype相关.so文件,恢复JDK目录原始状态,手动替换动态库会引发版本不兼容,反而加剧渲染异常。
Linux环境修复步骤
你提到的.so文件对应Linux环境,按以下顺序操作:
- 安装系统字体依赖包:
- Debian/Ubuntu 发行版执行:
sudo apt install fontconfig libfreetype6 libfontconfig1 ttf-dejavu - RHEL/CentOS/Fedora 发行版执行:
sudo dnf install fontconfig freetype dejavu-sans-fonts dejavu-serif-fonts
- Debian/Ubuntu 发行版执行:
- 配置JDK字体 fallback 目录:
- 进入JDK11安装目录,执行命令创建字体目录:
cd $JAVA_HOME/lib && mkdir -p fonts - 将你需要使用的TTF/OTF格式字体文件(比如思源黑体、Noto Sans系列等)复制到刚创建的
fonts目录下 - 刷新系统字体缓存:
fc-cache -fv
- 进入JDK11安装目录,执行命令创建字体目录:
- 修改IntelliJ启动参数:
- 打开IntelliJ安装目录下
bin文件夹内的idea64.vmoptions文件(32位系统对应idea.vmoptions) - 追加以下两行配置开启字体抗锯齿:
高分辨率屏幕可额外追加配置调整缩放比例,2K屏推荐设为-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true-Dsun.java2d.uiScale=1.5,4K屏推荐设为-Dsun.java2d.uiScale=2 - 打开IntelliJ安装目录下
Windows环境修复步骤
Windows系统无需修改JDK目录文件,按以下操作即可:
- 把你需要使用的truetype字体文件安装到系统字体目录(右键字体文件选择「安装」即可)
- 参考上述Linux环境的操作,修改IntelliJ的vmoptions配置文件,添加抗锯齿相关参数
最终验证
重启IntelliJ后,进入设置 -> 外观与行为 -> 外观,选择你配置好的字体,应用后查看界面和代码编辑区的文字显示是否正常。
如果问题仍然存在,可以打开IntelliJ的全局搜索(双击Shift),搜索Choose Boot Java Runtime for the IDE,选择JetBrains官方提供的自定义运行时启动,该运行时自带优化后的字体渲染逻辑,适配高版本JDK的字体规则。
内容的提问来源于stack exchange,提问作者Walter
相关产品推荐
相关产品推荐

