Jdk1.4:
linux 下 java 的 swing 默认不能显示汉字, 网上这方面的介绍很多, 只是似乎都不是很详细, 因此我觉得还是有必要再把这些陈词滥调再重复一遍。
首先, 使用 su 命令切换为 root, 再使用 cd 命令切换到你的 jdk 安装路径下, 例如, 在我机器上, jdk 安装在 /usr/java/j2sdk1.4.2_01/ 下。
然后, 切换到该目录下的 jre/lib 目录下, 将 font.properties 备份一下:
# cd /usr/java/j2sdk1.4.2_01/# cd jre/lib/# mv font.properties font.properties.bak
接下来, font.properties.zh_cn.sun 复制为 font.properties。 如果你的机器上没有 font.properties.zh_cn.sun, 那应该有“font.properties.zh_cn.别的单词”什么的。 如果都没有, 那你最好重装一份更新版本的 jdk。
# cp font.properties.zh_cn.sun font.properties
最后, 编辑复制得到的 font.properties 文件, 跳到文件尾部, 找到“filename.xxx=”这一行, 将后面的路径修改为你机器上的 simsun.ttf 所在的全路径, 下面的 appendedfontpath 一行也做相应修改, 将路径指向你的 simsun.ttf 所在文件夹。
filename.-hanyi-hanyisong-medium-r-normal--*-%d-*-*-c-*-gbk-0=/usr/share/fonts/local/simsun.ttfappendedfontpath=/usr/share/fonts/local/
Jdk1.5:
linux 下 java 的 swing 默认不能显示汉字, 网上对于 jdk 1.4 的中文配置介绍很多, 滇狐的网站也介绍了这方面的内容。 相比之下, 关于 jdk 1.5 的中文配置的相关资料就比较难找了, 滇狐费了不少功夫才配置好了 jdk 1.5 的中文显示, 现把配置过程详细叙述如下:
首先, 使用 su 命令切换为 root, 再使用 cd 命令切换到你的 jdk 安装路径下, 例如, 在我机器上, jdk 安装在 /usr/java/jdk1.5.0_05/ 下。
然后, 切换到该目录下的 jre/lib 目录下, 你会看到该目录下有许多形如 fontconfig.*.properties.src 的文件。 选择一个最接近你的系统的 properties, 将它复制为 fontconfig.properties。 例如, 我的系统是 fedora core, 因此我就使用 fontconfig.redhat.properties:
# cp fontconfig.redhat.properties.src fontconfig.properties
编辑复制得到的 font.properties 文件, 将文件开头处的 component font mappings 块中的中文默认字体改为 simsun, 如下:
# component font mappingsallfonts.chinese-cn-iso10646=-misc-simsun-medium-r-normal--*-%d-*-*-c-*-iso10646-1
接着, 在 font file names 块中添加 simsun 的路径映射, 把以下的路径改为你机器里的 simsun.ttf 所在的路径:
# font file namesfilename.-misc-simsun-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/local/share/fonts/simsun.ttf
最后跳到文件尾部, 将 awt 的字体搜索路径指向相应的目录:
# awt x11 font pathsawtfontpath.chinese-tw-
iso10646=/usr/local/share/fontsawtfontpath.chinese-cn-
iso10646=/usr/local/share/fontsawtfontpath.japanese-
iso10646=/usr/local/share/fontsawtfontpath.korean-
iso10646=/usr/local/share/fonts