josephpei 发表于 2005-1-10 11:56:59

关于打开文件对话框中文显示问题请教!

在google中搜到这样的方法:
export G_BROKEN_FILENAMES=1
你那是gtk 2.2时代的方法了
2.4开始应该改为
G_FILENAME_ENCODING=@local
export G_FILENAME_ENCODING
但是不好使

我的系统:ubuntu(debian) kernel 2.6.8 gnome 2.8.2 locales=zh.GBK
一些程序如gedit,gimp等的打开文件对话框中文显示正常
但gmplayer、xpdf、chmsee(这个甚至目录或文件包含中文的都不显示,连乱码都没有)则不正常

linky_fan 发表于 2005-1-10 13:13:21

首先中文字体加好, 设置好自体路径, 启动X; 这些你应该都做好了,剩下的一个是GTK1和GTK2所用字体的设置(不知道你有没有生成font.dir font.scale这两个文件),然后这些字体就可以调用了,配合locale就能实现中文的显示.

josephpei 发表于 2005-1-10 15:01:18

josephpei@hitpei:/usr/share/fonts/truetype/zh_CN $ ls
config         gckai00m.ttfgmin00h.ttf      stfangso.ttftcsun00m.ttf
fonts.cache-1gcska00b.ttfgmin00m.ttf      stxihei.ttf   tcsun02m.ttf
fonts.dir      gcstt00b.ttfgmin00u.ttf      stxingka.ttftcwei00b.ttf
fonts.scale    gcsun00b.ttfgsin00m.ttf      stxinwei.ttftcyen00b.ttf
fzstk.ttf      gcsun00m.ttfgska00b.ttf      stzhongs.ttftcyen00m.ttf
fzytk.ttf      gcsun02m.ttfgsun00l.ttf      sursong.ttf   tgtr00l.ttf
gbsn00l.ttf    gcwei00b.ttfgui.conf         tahoma.ttf    thei01b.ttf
gccmh00b.ttf   ggtr00b.ttf   gwei00b.ttf      tcbsn00l.ttftkai00m.ttf
gccsn00b.ttf   ggtr00h.ttf   simfang.ttf      tccmh00b.ttftkan00u.ttf
gcdls00b.ttf   ggtr00l.ttf   simhei.ttf       tccsn00b.ttftlei00m.ttf
gcdsn00l.ttf   ggtr00u.ttf   simkai.ttf       tchei00b.ttftmin00m.ttf
gcdsn00m.ttf   ghei01b.ttf   simli.ttf      tchei00m.ttftoor00u.ttf
gcfsn00m.ttf   ghei01u.ttf   simsun18030.ttftchw00u.ttf   tovr00u.ttf
gchei00b.ttf   gkai00m.ttf   simsun.ttf       tcska00b.ttftpop00b.ttf
gchei00m.ttf   glei00m.ttf   simyou.ttf       tcstt00b.ttftpop02b.ttf
gchw00u.ttf    gmin00b.ttf   stcaiyun.ttf   tcsun00b.ttftpop03b.ttf

troll 发表于 2005-1-10 15:08:10

你说的那几个软件都是用的core x 字体系统,你用xlsfonts | grep zh_CN.gbk看看有没有可用的中文字体

josephpei 发表于 2005-1-10 15:25:05

xlsfonts | grep zh_CN.gbk
没有
怎么办

troll 发表于 2005-1-10 15:29:34

那就是像linky_fan说的,在中文字体目录下生成fonts.dir和fonts.scale,并且把字体目录路径加入/etc/X11/XF86config中,你可能需要安装ttmkfdir,首先apt-get install ttmkfdir

纠正前面所说的,应该是xlsfonts | grep gbk

josephpei 发表于 2005-1-10 15:35:43

我在中文字体目录下fc-cache了,有fonts.dir和fonts.scale这两个文件,并且将目录加入了XF86Config-4,并且修改了gtkrc.zh_CN,使用tomash,simsun
但是我发现系统的字体是放在/usr/share/fonts下的,分为几个类别,如misc,type1等,在/etc/X11/fonts下有对应的这几个目录,每个目录下有一个alias文件,
root@hitpei:/etc/X11/fonts # ls
100dpi75dpimiscSpeedotruetypeType1
root@hitpei:/etc/X11/fonts # cd Type1
root@hitpei:/etc/X11/fonts/Type1 # ls
xfonts-scalable.scale
文件内容大致如下
c0648bt_.pfb -bitstream-charter-medium-r-normal--0-0-0-0-p-0-iso8859-1
c0649bt_.pfb -bitstream-charter-medium-i-normal--0-0-0-0-p-0-iso8859-1
c0632bt_.pfb -bitstream-charter-bold-r-normal--0-0-0-0-p-0-iso8859-1
c0633bt_.pfb -bitstream-charter-bold-i-normal--0-0-0-0-p-0-iso8859-1
c0419bt_.pfb -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1
c0582bt_.pfb -bitstream-courier-medium-i-normal--0-0-0-0-m-0-iso8859-1
c0583bt_.pfb -bitstream-courier-bold-r-normal--0-0-0-0-m-0-iso8859-1
c0611bt_.pfb -bitstream-courier-bold-i-normal--0-0-0-0-m-0-iso8859-1
cursor.pfa -xfree86-cursor-medium-r-normal--0-0-0-0-p-0-adobe-fontspecific

XF86Config-4中的字体目录是/etc/X11/fonts/xxx

troll 发表于 2005-1-10 15:40:28

那个alias是字体的别名,你看看你中文字体目录下的fonts.dir有没有包含必要的字体描述信息。

josephpei 发表于 2005-1-10 15:45:17

这是我的zh_CN中的fonts.dir
40
ds=y:ai=0.167:simsun.ttf -sim-simsun-bold-i-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.167:simsun.ttf -sim-simsun-medium-i-normal--0-0-0-0-c-0-big5-0
ds=y:ai=0.167:simsun.ttf -sim-simsun-bold-i-normal--0-0-0-0-c-0-gbk-0
bw=0.5:simsun.ttf -sim-simsun-medium-r-normal--0-0-0-0-c-0-iso8859-1
bw=0.5:ds=y:simsun.ttf -sim-simsun-bold-r-normal--0-0-0-0-c-0-iso8859-1
simsun.ttf -sim-simsun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:ai=0.167:simsun.ttf -sim-simsun-bold-i-normal--0-0-0-0-c-0-big5-0
ai=0.167:simsun.ttf -sim-simsun-medium-i-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:simsun.ttf -sim-simsun-bold-r-normal--0-0-0-0-c-0-gbk-0
bw=0.5:ds=y:simsun.ttf -sim-simsun-bold-r-normal--0-0-0-0-c-0-iso10646-1
bw=0.5:ai=0.167:simsun.ttf -sim-simsun-medium-i-normal--0-0-0-0-c-0-iso10646-1
ai=0.167:simsun.ttf -sim-simsun-medium-i-normal--0-0-0-0-c-0-gbk-0
bw=0.5:ds=y:ai=0.167:simsun.ttf -sim-simsun-bold-i-normal--0-0-0-0-c-0-iso10646-1
bw=0.5:ds=y:ai=0.167:simsun.ttf -sim-simsun-bold-i-normal--0-0-0-0-c-0-iso8859-1bw=0.5:simsun.ttf -sim-simsun-medium-r-normal--0-0-0-0-c-0-iso10646-1
ds=y:simsun.ttf -sim-simsun-bold-r-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:simsun.ttf -sim-simsun-bold-r-normal--0-0-0-0-c-0-big5-0
bw=0.5:ai=0.167:simsun.ttf -sim-simsun-medium-i-normal--0-0-0-0-c-0-iso8859-1
simsun.ttf -sim-simsun-medium-r-normal--0-0-0-0-c-0-big5-0
simsun.ttf -sim-simsun-medium-r-normal--0-0-0-0-c-0-gbk-0
ai=0.167:simsun.ttf -sim-simsun-medium-i-normal--0-0-0-0-m-0-iso10646-1

troll 发表于 2005-1-10 15:50:06

你这个是手写的吧,ttmkfdir产生出来的没有bold之类的,先不管他,我前面说的有误,你应该用

xlsfonts | grep gbk

来查看有没有可用的gbk字体。你的gtkrc.zh_CN是什么内容

josephpei 发表于 2005-1-10 15:52:41

这个不是我手写的,是fc-cahe生成的
我的gtkrc.zh_CN
tyle "gtk-default-zh-cn" {
fontset = "-*-tahoma-medium-r-normal--9-*-*-*-*-*-iso8859-1,\
-*-simsun-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-*"
}
class "GtkWidget" style "gtk-default-zh-cn"

troll 发表于 2005-1-10 15:58:10

fc-cache 会生成fonts.dir,我实在不明白,这要请教字体专家cnhnln了,你的gtkrc没什么问题,就是英文好像小了点。

你xlsfonts | grep gbk的结果是什么。

josephpei 发表于 2005-1-10 16:00:24

xlsfonts | grep gbk结果是没有
我用ttmkfdir了一下,fonts.dir结果没什么变化

troll 发表于 2005-1-10 16:03:10

你做这一切后有没有重启X过?

josephpei 发表于 2005-1-10 16:08:08

注销过
页: [1] 2
查看完整版本: 关于打开文件对话框中文显示问题请教!