很多朋友在 Linux 下使用 Java 开发应用程序时发现中文显示不正常,在窗口应用中的中文显示为一串方块。这主要是由于字体设置不正确。JDK 自带的配置文件中,它所指定的中文字体不存在而造成了显示不正确。本文以 Mandrake Linux 8.2 、JDK 1.4.1 为例,简单的介绍了在 Linux 下 Java 中文环境的设置方法。其它 Linux 系统或 JDK 版本可参照本文作相应调整。
首先,检查你的 /usr/share/fonts/ttf/gb 目录下是否装有中文字体 gbsn00lp.ttf 。如果没有,也可以用 Windows 字体目录下的 song.ttf 来代替。将字体文件拷贝到 Java 安装目录下的 jre/lib/fonts 下。
第二,修改 Java 安装目录下的 jre/lib/fonts/fonts.dir 文件,将首行的 72 改为 73,然后添加下列内容:
gbsn00lp.ttf -Arphic Technology Co.-AR PL SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
注意:如果你用的是 song.ttf ,则应该将头部的 gbsn00lp.ttf 改为 song.ttf 。
第三,在 Java 安装目录下的 jre/lib 目录中,将字体配置文件 font.properties.zh.Turbo 复制为 font.properties.zh 。然后修改 font.properties.zh 。将文件中所有的:
-tlc-song-medium-r-normal--*-%d-*-*-c-*-gbk-0 替换为:
-Arphic Technology Co.-AR PL SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
第四,用 JDK 自带的演示程序 SwingSet2 测试,如果看到中文菜单则说明设置成功。
原文地址 [url]http://www.javaidea.net/list.jsp?topic=4[/url]
其他文档 [url]http://ccpi.gov.cn/Linux/lg-zh-issue...inux_java.html[/url]
首先,检查你的 /usr/share/fonts/ttf/gb 目录下是否装有中文字体 gbsn00lp.ttf 。如果没有,也可以用 Windows 字体目录下的 song.ttf 来代替。将字体文件拷贝到 Java 安装目录下的 jre/lib/fonts 下。
第二,修改 Java 安装目录下的 jre/lib/fonts/fonts.dir 文件,将首行的 72 改为 73,然后添加下列内容:
gbsn00lp.ttf -Arphic Technology Co.-AR PL SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
注意:如果你用的是 song.ttf ,则应该将头部的 gbsn00lp.ttf 改为 song.ttf 。
第三,在 Java 安装目录下的 jre/lib 目录中,将字体配置文件 font.properties.zh.Turbo 复制为 font.properties.zh 。然后修改 font.properties.zh 。将文件中所有的:
-tlc-song-medium-r-normal--*-%d-*-*-c-*-gbk-0 替换为:
-Arphic Technology Co.-AR PL SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
第四,用 JDK 自带的演示程序 SwingSet2 测试,如果看到中文菜单则说明设置成功。
原文地址 [url]http://www.javaidea.net/list.jsp?topic=4[/url]
其他文档 [url]http://ccpi.gov.cn/Linux/lg-zh-issue...inux_java.html[/url]
转载于:https://blog.51cto.com/amyhang/75891