笔记 by 车东

Java桌面应用的缺省字体太难看? 使用Windows系统宋体和雅黑字体的设置方法

· 桌面应用|Desktop

Java应用和Windows应用一眼就能看出来,因为字体往往差别很明显。不同平台发布的Java有不同的缺省字体设置,比如:IBM的缺省是宋体-方正超大字体集,字库倒是很全,但字体看起来比较简陋(锯齿较明显),有时候甚至影响阅读。

如何换成Windows系统缺省的宋体字 1.4以前版本: 1 找到JAVAHOME/lib/font/下的font.properties.zh文件: 比如: C:\Program Files\IBM\Java142\jre\lib 下: 2 搜索 Simsun (Founder Extended)替换成Simsun即可;

Java 5以上版本: 1 将 %JAVAHOME%\lib\fontconfig.properties.src 命名为 %JAVAHOME%\lib\fontconfig.properties; 比如: C:\Program Files\Java\jre1.6.0_03\lib下的fontconfig.properties 2 将 %JAVAHOME%\lib\fontconfig.properties文件中的 “allfonts.chinese-gb18030属性更改为 “allfonts.chinese-gb18030=SimSun”;

参考文档: IBM DB2 控制中心等图形工具在 Windows 下的字体设置

如何充分利用系统的ClearType支持 苹果操作系统对于字体比较重视: 苹果平台上的JDK专门有扩展属性用于平滑字体的扩展设置。

而应用的选项中: 也有字体边缘平滑的设置,但需要每个应用找到工具选项的基面设置。更通用的方法是在Windows的系统字体,所有Java应用全面支持ClearType的还是需要Java 5或6,先按照上面的fontconfig.properties设置成宋体后,然后安装雅黑字体包替换系统缺省的宋体即可。

效果附图: freemind_yahei_java_font.png

💬 历史评论

以下 2 条评论从旧版 Movable Type 博客迁移而来。 原始评论时间:2002–2016 年。

georgexsh · 2007-10-26 15:20

字体是一方面,我觉得关键还是字号太小 比如freemind,界面字体即使如此修改仍然很差劲,还是改用英文界面算了


风过 · 2009-02-25 16:29

呃。。。。貌似你可以考虑在UI添加抗锯齿绘制,不论什么字体效果都还不错