关于如何让jre显示中文字体的方法

创建:2005-10-28 00:09:13
作者:Unlinux
来自: http://www.Unlinux.com

由于jre里font.properies默认的字体是 Turbolinux里的-tlc-song-字体,如果你没有这种字体,肯定显示的都是“口”,解决方法有2种,一个就是按照jre里的说明,按照它的方法自己添加字体,但是这个难度比较大,需要用它提供的脚本,但是对于我们这些不是很了解java程序的菜鸟来说,这个方法显然有点难度。于是,我就想,既然我自己没有办法生成字体目录,我就改我原来的fonts.dir,让它支持这种-tlc-song-字体,同时保持原来的字体-misc- simsun-。更改的方法有很多种,我的方法不一定最好,也不一定是最简单,如果那个兄弟有更好的方法,可以写出来。
1> 新生成一个fonts.dir;
2> 在原来的fonts.dir里增加新的字体定义。
我以前一种为例子,具体方法如下:
1.在/usr/X11R6/lib/X11/fonts/trutype/下建立一个新的目录ttf-zh(目录名随便你起),然后将simsun.ttf,tahoma字体拷贝至这个新建立的目录。
2.将simsun.ttf改名为tlc_song.ttf,将tahoma.ttf改为tlc_song_ascii.ttf。
3.生成fonts.dir文件:
132
tlc_song_ascii.ttf -tlc-song-medium-r-normal–0-0-0-0-p-0-iso8859-1
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-iso10646-1
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-gbk-0
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-gb2312.1980-0
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-gb18030.2000-1
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-gb18030.2000-0
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-gb18030-0
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-big5.eten-0
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-big5.et-0
tlc_song.ttf -tlc-song-medium-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:tlc_song_ascii.ttf -tlc-song-medium-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-iso10646-1
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-gbk-0
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-gb2312.1980-0
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-gb18030.2000-1
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-gb18030.2000-0
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-gb18030-0
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-big5.eten-0
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-big5.et-0
ai=0.3:tlc_song.ttf -tlc-song-medium-i-normal–0-0-0-0-c-0-big5-0
ds=y:tlc_song_ascii.ttf -tlc-song-bold-r-normal–0-0-0-0-p-0-iso8859-1
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-iso10646-1
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-gbk-0
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-gb2312.1980-0
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-gb18030.2000-1
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-gb18030.2000-0
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-gb18030-0
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-big5.eten-0
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-big5.et-0
ds=y:tlc_song.ttf -tlc-song-bold-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:ds=y:tlc_song_ascii.ttf -tlc-song-bold-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-iso10646-1
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-gbk-0
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-gb2312.1980-0
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-gb18030.2000-1
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-gb18030.2000-0
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-gb18030-0
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-big5.eten-0
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-big5.et-0
ai=0.3:ds=y:tlc_song.ttf -tlc-song-bold-i-normal–0-0-0-0-c-0-big5-0
tlc_song_ascii.ttf -tlc-ming-medium-r-normal–0-0-0-0-p-0-iso8859-1
tlc_song.ttf -tlc-ming-medium-r-normal–0-0-0-0-c-0-big5.eten-0
tlc_song.ttf -tlc-ming-medium-r-normal–0-0-0-0-c-0-big5.et-0
tlc_song.ttf -tlc-ming-medium-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:tlc_song_ascii.ttf -tlc-ming-medium-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:tlc_song.ttf -tlc-ming-medium-i-normal–0-0-0-0-c-0-big5.eten-0
ai=0.3:tlc_song.ttf -tlc-ming-medium-i-normal–0-0-0-0-c-0-big5.et-0
ai=0.3:tlc_song.ttf -tlc-ming-medium-i-normal–0-0-0-0-c-0-big5-0
ds=y:tlc_song_ascii.ttf -tlc-ming-bold-r-normal–0-0-0-0-p-0-iso8859-1
ds=y:tlc_song.ttf -tlc-ming-bold-r-normal–0-0-0-0-c-0-big5.eten-0
ds=y:tlc_song.ttf -tlc-ming-bold-r-normal–0-0-0-0-c-0-big5.et-0
ds=y:tlc_song.ttf -tlc-ming-bold-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:ds=y:tlc_song_ascii.ttf -tlc-ming-bold-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:ds=y:tlc_song.ttf -tlc-ming-bold-i-normal–0-0-0-0-c-0-big5.eten-0
ai=0.3:ds=y:tlc_song.ttf -tlc-ming-bold-i-normal–0-0-0-0-c-0-big5.et-0
ai=0.3:ds=y:tlc_song.ttf -tlc-ming-bold-i-normal–0-0-0-0-c-0-big5-0
tlc_song.ttf -tlc-mincho-medium-r-normal–0-0-0-0-c-0-jisx0212.1990-0
tlc_song.ttf -tlc-mincho-medium-r-normal–0-0-0-0-c-0-jisx0208.1990-0
tlc_song.ttf -tlc-mincho-medium-r-normal–0-0-0-0-c-0-jisx0208.1983-0
tlc_song.ttf -tlc-mincho-medium-r-normal–0-0-0-0-c-0-jisx0201.1976-0
tlc_song_ascii.ttf -tlc-mincho-medium-r-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:tlc_song.ttf -tlc-mincho-medium-i-normal–0-0-0-0-c-0-jisx0212.1990-0
ai=0.3:tlc_song.ttf -tlc-mincho-medium-i-normal–0-0-0-0-c-0-jisx0208.1990-0
ai=0.3:tlc_song.ttf -tlc-mincho-medium-i-normal–0-0-0-0-c-0-jisx0208.1983-0
ai=0.3:tlc_song.ttf -tlc-mincho-medium-i-normal–0-0-0-0-c-0-jisx0201.1976-0
ai=0.3:tlc_song_ascii.ttf -tlc-mincho-medium-i-normal–0-0-0-0-p-0-iso8859-1
ds=y:tlc_song.ttf -tlc-mincho-bold-r-normal–0-0-0-0-c-0-jisx0212.1990-0
ds=y:tlc_song.ttf -tlc-mincho-bold-r-normal–0-0-0-0-c-0-jisx0208.1990-0
ds=y:tlc_song.ttf -tlc-mincho-bold-r-normal–0-0-0-0-c-0-jisx0208.1983-0
ds=y:tlc_song.ttf -tlc-mincho-bold-r-normal–0-0-0-0-c-0-jisx0201.1976-0
ds=y:tlc_song_ascii.ttf -tlc-mincho-bold-r-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:ds=y:tlc_song.ttf -tlc-mincho-bold-i-normal–0-0-0-0-c-0-jisx0212.1990-0
ai=0.3:ds=y:tlc_song.ttf -tlc-mincho-bold-i-normal–0-0-0-0-c-0-jisx0208.1990-0
ai=0.3:ds=y:tlc_song.ttf -tlc-mincho-bold-i-normal–0-0-0-0-c-0-jisx0208.1983-0
ai=0.3:ds=y:tlc_song.ttf -tlc-mincho-bold-i-normal–0-0-0-0-c-0-jisx0201.1976-0
ai=0.3:ds=y:tlc_song_ascii.ttf -tlc-mincho-bold-i-normal–0-0-0-0-p-0-iso8859-1
tlc_song_ascii.ttf -tlc-HanyiSong-medium-r-normal–0-0-0-0-p-0-iso8859-1
tlc_song.ttf -tlc-HanyiSong-medium-r-normal–0-0-0-0-c-0-iso10646-1
tlc_song.ttf -tlc-HanyiSong-medium-r-normal–0-0-0-0-c-0-gbk-0
tlc_song.ttf -tlc-HanyiSong-medium-r-normal–0-0-0-0-c-0-gb2312.1980-0
tlc_song.ttf -tlc-HanyiSong-medium-r-normal–0-0-0-0-c-0-gb18030-0
tlc_song.ttf -tlc-HanyiSong-medium-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:tlc_song_ascii.ttf -tlc-HanyiSong-medium-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:tlc_song.ttf -tlc-HanyiSong-medium-i-normal–0-0-0-0-c-0-iso10646-1
ai=0.3:tlc_song.ttf -tlc-HanyiSong-medium-i-normal–0-0-0-0-c-0-gbk-0
ai=0.3:tlc_song.ttf -tlc-HanyiSong-medium-i-normal–0-0-0-0-c-0-gb2312.1980-0
ai=0.3:tlc_song.ttf -tlc-HanyiSong-medium-i-normal–0-0-0-0-c-0-gb18030-0
ai=0.3:tlc_song.ttf -tlc-HanyiSong-medium-i-normal–0-0-0-0-c-0-big5-0
ds=y:tlc_song_ascii.ttf -tlc-HanyiSong-bold-r-normal–0-0-0-0-p-0-iso8859-1
ds=y:tlc_song.ttf -tlc-HanyiSong-bold-r-normal–0-0-0-0-c-0-iso10646-1
ds=y:tlc_song.ttf -tlc-HanyiSong-bold-r-normal–0-0-0-0-c-0-gbk-0
ds=y:tlc_song.ttf -tlc-HanyiSong-bold-r-normal–0-0-0-0-c-0-gb2312.1980-0
ds=y:tlc_song.ttf -tlc-HanyiSong-bold-r-normal–0-0-0-0-c-0-gb18030-0
ds=y:tlc_song.ttf -tlc-HanyiSong-bold-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:ds=y:tlc_song_ascii.ttf -tlc-HanyiSong-bold-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:ds=y:tlc_song.ttf -tlc-HanyiSong-bold-i-normal–0-0-0-0-c-0-iso10646-1
ai=0.3:ds=y:tlc_song.ttf -tlc-HanyiSong-bold-i-normal–0-0-0-0-c-0-gbk-0
ai=0.3:ds=y:tlc_song.ttf -tlc-HanyiSong-bold-i-normal–0-0-0-0-c-0-gb2312.1980-0
ai=0.3:ds=y:tlc_song.ttf -tlc-HanyiSong-bold-i-normal–0-0-0-0-c-0-gb18030-0
ai=0.3:ds=y:tlc_song.ttf -tlc-HanyiSong-bold-i-normal–0-0-0-0-c-0-big5-0
tlc_song_ascii.ttf -tlc-default-medium-r-normal–0-0-0-0-p-0-iso8859-1
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-iso10646-1
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-gbk-0
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-gb2312.1980-0
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-gb18030-0
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-big5.eten-0
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-big5.et-0
tlc_song.ttf -tlc-default-medium-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:tlc_song_ascii.ttf -tlc-default-medium-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-iso10646-1
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-gbk-0
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-gb2312.1980-0
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-gb18030-0
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-big5.eten-0
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-big5.et-0
ai=0.3:tlc_song.ttf -tlc-default-medium-i-normal–0-0-0-0-c-0-big5-0
ds=y:tlc_song_ascii.ttf -tlc-default-bold-r-normal–0-0-0-0-p-0-iso8859-1
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-iso10646-1
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-gbk-0
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-gb2312.1980-0
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-gb18030-0
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-big5.eten-0
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-big5.et-0
ds=y:tlc_song.ttf -tlc-default-bold-r-normal–0-0-0-0-c-0-big5-0
ai=0.3:ds=y:tlc_song_ascii.ttf -tlc-default-bold-i-normal–0-0-0-0-p-0-iso8859-1
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-iso10646-1
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-gbk-0
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-gb2312.1980-0
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-gb18030-0
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-big5.eten-0
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-big5.et-0
ai=0.3:ds=y:tlc_song.ttf -tlc-default-bold-i-normal–0-0-0-0-c-0-big5-0
生成fonts.scale:cp fonts.dir fonts.scale。
4.修改/etc/X11/XF86config文件,增加字体目录FontPath "/usr/X11R6/lib/X11/fonts/truetype/ttf-zh"
5.运行SuSEconfig,如果没有什么错误提示,重新启动xwindow,你此时运行/jre/bin/ControlPanel就会见到下面的图样。

注意事项:如果你新安装了jre1.4.1_01的话,建议安装到原来系统的默认目录/usr/lib/SunJava2-1.3.1中。同时修改. /jre/lib/font.properties.zh.Turbo,将其改名为font.properties.zh。否则仍然是“口”。
至此,一切就搞定了。

尝试:如果不想新建立目录和fonts.dir,可以在原来的fonts.dir中增加上面的字体脚本,但是要将开头的数字改为x+132(这个是说明下面有多少行,必需改)。然后做2个联接,ln -s simsun.ttf tlc_song.ttf,ln -s tahoma.ttf tlc_song_ascii.ttf。然后运行SuSEconfig,重新启动xwindow。这种改动最小,只是我当时怕这样该引起原来的字体混乱,所以按照前述的方法修改。如有不对之处,还请大家指教。
转载自:http://www.unlinux.com/doc/java/20051028/5830.html

Read: 734

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注