LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1016|回复: 7

还是java的中文问题

[复制链接]
发表于 2006-6-1 09:32:04 | 显示全部楼层 |阅读模式
昨天下载了一个日记软件jdiary,运行发现软件界面的中文菜单没有显示,不是方格,而是空白一片,然后按照定贴的方法修改了java的字体配置文件,再运行时中文变成方格了,总算比修改前进步了一点点,可是仍然无法显示中文。终端下运行又没有任何输出。怎么办才好啊?
发表于 2006-6-2 20:58:36 | 显示全部楼层
我也求助,这个是字体配置文件的问题
回复 支持 反对

使用道具 举报

发表于 2006-6-2 22:08:13 | 显示全部楼层
先是字体配置文件,使用mdv带的firefly
  1. # fontconfig.properties        2005-11-10
  2. #
  3. # Copyright 2003 Sun Microsystems, Inc. All rights reserved.
  4. #
  5. # Version
  6. version=1
  7. # Component Font Mappings
  8. serif.plain.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  9. serif.bold.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  10. serif.italic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  11. serif.bolditalic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  12. sansserif.plain.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  13. sansserif.bold.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  14. sansserif.italic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  15. sansserif.bolditalic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  16. monospaced.plain.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  17. monospaced.bold.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  18. monospaced.italic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  19. monospaced.bolditalic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  20. dialog.plain.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  21. dialog.bold.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  22. dialog.italic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  23. dialog.bolditalic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  24. dialoginput.plain.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  25. dialoginput.bold.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  26. dialoginput.italic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  27. dialoginput.bolditalic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  28. dialoginput.bolditalic.zh-1=-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
  29. # Search Sequences
  30. sequence.allfonts=zh-1
  31. # Exclusion Ranges
  32. # Font File Names
  33. filename.-misc-ar pl new sung-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0=/usr/share/fonts/ttf/chinese/fireflysung.ttf
  34. # AWT X11 font paths
  35. awtfontpath.zh-1=/usr/share/fonts/ttf/chinese/
复制代码
然后:
  1. cd $JAVA_HOME/jre/lib/
  2. rm fontconfig.*.*
复制代码
删除用于Sun, RedHar, Turbo等系统的fontconfig.*.*
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-6-3 01:23:39 | 显示全部楼层
Ê天È于搞š了,把java卸载Í°安Å了一下重新配置,终于把中文显示搞出来了。
因为是个菜鸟,所以用的都是笨办法。并且都是参考别人的建议设置的,照做而已。不过仍然不敢独享,与大家分享一下:
一、安装simsun.ttf字体
      我的simsun.ttf被安装到了/usr/X11R6/lib/X11/fonts/drakfont/ttf这个目录下面,可费了我老大劲才找到啊。不知道你的是否安装在同一目录?
二、修改/etc/profile文件
      在文件的最后加上这一句:
      export JAVA_FONTS=你的simsun.ttf安装目录
三、修改/usr/lib/jre-1.4.2_09/lib/font.properties.zh_CN.Redhat文件
      (注:参考的东东中大多是修改font.properties.zh或者font.properties.zh.turbo。不过忘了在哪里看到说SUN的JAVA把Mandriva当作REDHAT,所以就想到修改font.properties.zh_CN.Redhat这个,在我的机子上是奏效的。)
      我的font.properties.zh_CN.Redhat代码如下:
# %W% %E%
# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
#

# Component Font Mappings For RedhatLinux 8.0/zh_CN
#
serif.0=-b&h-luxi serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1
serif.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

serif.italic.0=-b&h-luxi serif-medium-i-normal--*-%d-*-*-p-*-iso8859-1
serif.italic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

serif.bold.0=-b&h-luxi serif-bold-r-normal--*-%d-*-*-p-*-iso8859-1
serif.bold.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

serif.bolditalic.0=-b&h-luxi serif-bold-i-normal--*-%d-*-*-p-*-iso8859-1
serif.bolditalic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

sansserif.0=-b&h-luxi sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1
sansserif.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

sansserif.italic.0=-b&h-luxi sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1
sansserif.italic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

sansserif.bold.0=-b&h-luxi sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1
sansserif.bold.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

sansserif.bolditalic.0=-b&h-luxi sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1
sansserif.bolditalic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

monospaced.0=-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

monospaced.italic.0=-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.italic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

monospaced.bold.0=-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.bold.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

monospaced.bolditalic.0=-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
monospaced.bolditalic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialog.0=-b&h-luxi sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1
dialog.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialog.italic.0=-b&h-luxi sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1
dialog.italic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialog.bold.0=-b&h-luxi sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1
dialog.bold.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialog.bolditalic.0=-b&h-luxi sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1
dialog.bolditalic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialoginput.0=-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialoginput.italic.0=-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.italic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialoginput.bold.0=-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.bold.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

dialoginput.bolditalic.0=-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1
dialoginput.bolditalic.1=-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

# Missing Glyph Character
#
default.char=274f

# Component Font Character Encodings
#
fontcharset.serif.0=sun.io.CharToByteISO8859_1
fontcharset.serif.1=sun.io.CharToByteUnicodeBigUnmarked

fontcharset.sansserif.0=sun.io.CharToByteISO8859_1
fontcharset.sansserif.1=sun.io.CharToByteUnicodeBigUnmarked

fontcharset.monospaced.0=sun.io.CharToByteISO8859_1
fontcharset.monospaced.1=sun.io.CharToByteUnicodeBigUnmarked

fontcharset.dialog.0=sun.io.CharToByteISO8859_1
fontcharset.dialog.1=sun.io.CharToByteUnicodeBigUnmarked

fontcharset.dialoginput.0=sun.io.CharToByteISO8859_1
fontcharset.dialoginput.1=sun.io.CharToByteUnicodeBigUnmarked

# Exclusion Ranges
#

# XFontSet Information
#
fontset.serif.plain=\
-b&h-luxi serif-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.serif.italic=\
-b&h-luxi serif-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.serif.bold=\
-b&h-luxi serif-bold-r-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.serif.bolditalic=\
-b&h-luxi serif-bold-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.sansserif.plain=\
-b&h-luxi sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.sansserif.italic=\
-b&h-luxi sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.sansserif.bold=\
-b&h-luxi sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.sansserif.bolditalic=\
-b&h-luxi sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.monospaced.plain=\
-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.monospaced.italic=\
-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.monospaced.bold=\
-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.monospaced.bolditalic=\
-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialog.italic=\
-b&h-luxi sans-medium-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialog.bold=\
-b&h-luxi sans-bold-r-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialog.bolditalic=\
-b&h-luxi sans-bold-i-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialog.plain=\
-b&h-luxi sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialoginput.italic=\
-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialoginput.bold=\
-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialoginput.bolditalic=\
-b&h-luxi mono-bold-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.dialoginput.plain=\
-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

fontset.default=\
-b&h-luxi sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0

filename.-misc-SimSun-medium-r-normal--0-0-0-0-c-0-gbk-0=/usr/X11R6/lib/X11/fonts/drakfont/ttf/simsun.ttf

      注意最后一行中的路径是自己的simsun.ttf安装目录
四、把除了font.properties.zh_CN.Redhat以外的font.properties.*文件移动到一个新建的目录里。
到此为止,我的终于出现了可爱的中文,欣喜难当,谨以此文献给如我一般的菜鸟:)
回复 支持 反对

使用道具 举报

发表于 2006-6-3 09:26:47 | 显示全部楼层
如果你用java1.5,你就可以用一个有史以来最偷懒的办法:
在jre/lib/fonts下创建一个名字叫fallback目录,在这个新在目录一下copy或ln -s一些你要的中文字体,一切就配制完成了。
回复 支持 反对

使用道具 举报

发表于 2006-6-3 12:38:50 | 显示全部楼层
Post by masterdemon
如果你用java1.5,你就可以用一个有史以来最偷懒的办法:
在jre/lib/fonts下创建一个名字叫fallback目录,在这个新在目录一下copy或ln -s一些你要的中文字体,一切就配制完成了。


嗯?这一招哪里学的?没见过。我要试一下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-6-4 18:33:08 | 显示全部楼层
Post by masterdemon
如果你用java1.5,你就可以用一个有史以来最偷懒的办法:
在jre/lib/fonts下创建一个名字叫fallback目录,在这个新在目录一下copy或ln -s一些你要的中文字体,一切就配制完成了。

我也没试过,改天试一下。
不过有些软件还是用的就阿va1.4,比如永中,据说java1.5下无法良好运行。还有我喜欢的java日记本,在1.5下也没运行起来啊。
回复 支持 反对

使用道具 举报

发表于 2006-6-4 22:10:48 | 显示全部楼层
truncatei兄的配置很简单也很方便啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表