Java程序中文字体配置

出自Linux Wiki

在2008年6月25日 (三) 09:12由Chenxing (讨论 | 贡献)所做的修订版本
(差异) ←上一修订 | 最新修订 (差异) | 下一修订→ (差异)

DebianUbuntu等发行版中,JAVA程序的中文默认可能不正常(如几何做图工具Geogebra)。

经过观察,发现这是由于JRE字体配置不正确所导致的。修改JRE的字体配置文件可以解决这个问题。

Ubuntu用户可以考虑参考这篇文章完成配置。

目录

配置文件位置

字体配置文件存于[1]

JavaHome/lib/fontconfig.properties

其中,JavaHome表示JRE所在的路径,如在Debian、Ubuntu中,

JavaHome=/usr/lib/jvm/java-6-sun/jre

准备字体

首先请确定要使用的字体,如Windows中的黑体、宋体,或Linux中uming字体。目前我还不能将文泉驿的点阵字体用于此。

假设使用黑体,请先将Windows中的WINDOWS\Fonts\simhei.ttf文件复制到某个文件夹,并记录其地址,如可将其复制到/usr/share/fonts/truetype/win/simhei.ttf。而如果使用宋体,则复制simsun.ttc

修改配置文件

打开配置文件,如/usr/lib/jvm/java-6-sun/jre/lib/fontconfig.properties

version=1后面加入[2]

allfonts.chinese-arphic1=-misc-simhei-medium-r-normal--0-0-0-0-p-0-iso10646-1

如果原来文件中还有设置allfonts.chinese-arphic1的,就把它们注释掉。

紧接着,加上

filename.-misc-simhei-medium-r-normal--0-0-0-0-p-0-iso10646-1=/usr/share/fonts/truetype/win/simhei.ttf

注意把绿色部分换成simhei.ttf存放的位置。

如果要使用宋体,则只需将前面所有的'simhei换成simsun即可。

如果使用其它truetype字体,请使用mkfontscale生成的文件中的字体名替换-misc-simhei-medium-r-normal--0-0-0-0-p-0-iso10646-1即可。[3][4]

相关资料

  1. http://java.sun.com/javase/6/docs/technotes/guides/intl/fontconfig.html
  2. http://blogs.sun.com/wind/entry/linux%E4%B8%8Bjava%E7%9A%84%E4%B8%AD%E6%96%87%E5%AD%97%E4%BD%93%E8%AE%BE%E7%BD%AE
  3. http://www.builder.com.cn/2008/0619/935502.shtml
  4. http://hiei.yeax.com/archives_48.html
个人工具
简体繁体转换