[问题]求教: 关于Ubuntu(Debian? Linux ?)自带中文字库及相关问题

系统字体配置、中文显示和输入法问题
回复
zhidian
帖子: 3
注册时间: 2005-08-24 16:30

[问题]求教: 关于Ubuntu(Debian? Linux ?)自带中文字库及相关问题

#1

帖子 zhidian » 2005-08-24 18:27

各位高人,在下求教一些很基本但是让我很头痛的中文问题:

我下载了 Ubuntu/KUbuntu 两个(ISO)安装文件,通过硬盘安装的方法,也都顺利装好了(纯属折腾自己)。
两者安装时曾分别选过中文/英文Locale.
现象是:在进入桌面以后,我用Konqueror(Ubuntu版本我通过网络安装了KDE,Kubuntu是自带)来浏览中文网站的时候,可以显示大部分中文内容,我此时还未另外安装任何中文字体;查看后得知,似乎应该是此发行版自带的中文字库显示出来的(/usr/share/fonts/truetype/arp....目录下),该目录下四个文鼎字库的文件,分别是宋体/楷体的繁简字库,具体的文件名我记不得了,我现在在Win2K3下面发贴 :(
(我没怎么用Gnome,我觉得同样的配置下,Gnome速度上远不如KDE的操作那么流畅)

问题在于:
1、为什么会缺字? (刚装好以后的最原始的状态下)无论是EN的Local,还是ZH_CN的Local,都会缺字。仅仅是最简单的Google网站的首页,那么寥寥几个字,也有缺的。是那4个字库引起的麽?
2、我在安装了KDE的中文包,并在KDE控制中心将区域/界面改为中国/简体汉字以后,在登录到KDE桌面过程中,在Flash画面上会显示登录进程,并伴有文字说明,这时候的文字(中文)就有缺字的现象。Why ?此时它到底用了那个字库?缺字是由于字库引起的麽?
3、最奇怪的问题:我将/usr/share/fonts/truetype/arp...下面的四个ttf文件移走,再重启动,仍然可以看到汉字,仍然是缺字。。。我昏迷咯,我理解的是,如果是那四个文件提供了中文字体,那么我移走以后,所有的中文应该是乱码,或者是无法显示的图形,但是为什么还能显示出来?是所有用过的字(中文)已经被Cache了?并且已经被存储到某个位置了?下次可以直接读Cache ?
4、在KDE控制中心,在字体安装那里,可以列出所有已经安装了的字体,那么,我如何知道那里列出来的每个字体分别对应于哪个物理文件?
5、通过xfontsel选出来的字型,我又如何知道实际上对应于哪个物理文件?
6、比如说,我现在已知系统中存在中文字库,但是我对之效果不满意,我怎么找出来现在都有哪些中文字库存在,又如何最安全的移除它们,换上自己心仪的中文字库?别告诉我让我查找所有的字库文件,然后挨个试验哈。

以上问题急待各位大虾给予解答。

下面这段话是我的一点牢骚,大家可以一笑而过:
也许是因为Linux(桌面版?)还在不断发展进化过程的缘故吧,它的字体管理体系实在是混乱,尤其针对非英文语系,对于想本地化的用户,着实头疼。单单一个字库的问题,偶就是每次碰到新发行版,每次都要再去看看有关的什么美化/汉化文章,着实郁闷之极。还不说什么粗体/斜体了,单就是搞清楚系统中的字体的分布规则(包括系统如何确认这些字体,以什么规则去渲染这些字体),就绝非普通用户能一蹴而就的事情。我想,国内的*Nix大虾不胜枚数,各大*nix论坛充斥了无数的美化/汉化的帖子,但是为啥子没人来做个小程序,帮助国内用户来可以很简单的做好这些事情?我想无非就是检测一下发型版本;检测一下桌面类型,检测一下Xwindows的类型;检测一下字体渲染系统的版本,然后修改相关的配置文件,也就是个经验+脚本的编写而已了(当然,我是没这个本事 :( ),可惜没人做这个事情,于是我们这些最初级的用户,只好每次都是看别人的各种文章,自己去知其然不知其所以然的修改;下次又要重复这一过程....别告诉我什么与天斗其乐无穷,与Linux斗其乐无穷的话哈,Linux也在不断向更加人性化的方向发展,几大主流桌面的发展就充分说明这个问题。谁也不想在一些最基本的事情上折腾时间。
yongyi
帖子: 3025
注册时间: 2005-05-07 23:57
联系:

#2

帖子 yongyi » 2005-08-24 21:52

KDE下缺字,是QT的问题
如果终端konsole不能显示中文,请参考以下各方法:
法一:
把两个日本字给删除就好了!
ttf-kochi-gothic
ttf-kochi-mincho

法二,安装中文字体进行中文美化:
sudo apt-get install ttf-arphic-newsung
sudo apt-get install ttf-vera-yuan
(这是用圆体字进行中文美化)

法三:
用qt-config来指定字体替换。(安装qt3-qtconfig,从菜单运行Qt Configuration)

法四:
安装一个中文字体(如simsun),然后把它加入/etc/fonts/fonts.conf中,共有六处。
4、找找你用户文件夹下面的.fontconf(记不大清楚,类似的) 文件夹

对于最后一大段:
Ubuntu hoary下,如果不考虑字体版权问题,就一个命令:
sudo apt-get install ttf-vera-yuan
就实现了用圆体字进行中文美化,有中文粗斜体。
独自看一看大海
总想起身边走在路上的朋友
Lenovo E290-420[Celeron-M420/256M/60G/Intel GMA950]
zhidian
帖子: 3
注册时间: 2005-08-24 16:30

#3

帖子 zhidian » 2005-08-25 10:10

感谢2楼的热心回答。
不过,说KDE缺字,是QT的缘故,恐怕不妥,因为我装的是KDE3.4,QT在3.3以上时,缺字问题基本上已经解决了。
我在楼顶的帖子,基本上不是问的美化的问题,而是希望对字体的一些基本管理体系有个知其然的了解,嘿嘿。
我把/usr/share/fonts/truetype/arphic 下面的中文字库全部删除了,把 /usr/X11R6/lib/X11/fonts/misc 下面看起来像亚洲字库的一些文件也移除了。并且,我没有安装任何其他中文字库,现在,我通过xfontsel 已经看不到有可以显示汉字/亚洲文字的字体,但是。。。。系统仍然能显示部分汉字!!!
给出几个贴图吧,请大家继续帮我诊断:
附件
1.png
2.png
3.png
4.png
5.png
yongyi
帖子: 3025
注册时间: 2005-05-07 23:57
联系:

#4

帖子 yongyi » 2005-08-25 15:17

呵呵,兄弟强啊!
不好意思了,没看清楚你的帖子就回帖 :oops:
对此问题,我没有兄弟这般深入了解。
对了,如果兄弟有什么进展,欢迎继续分享哦。 :wink:
独自看一看大海
总想起身边走在路上的朋友
Lenovo E290-420[Celeron-M420/256M/60G/Intel GMA950]
zhidian
帖子: 3
注册时间: 2005-08-24 16:30

[分享]

#5

帖子 zhidian » 2005-08-25 19:21

目前的进展:
我几乎已经确认,系统自带的汉字是由 /usr/X11R6/lib/X11/fonts/misc/ 下面的某些文件提供的,缺字问题应该就是由这之中某字库引起的,但是目前还无法找出到底是那个,因为下面的文件太多了,里面又有X必须的fixed字库,我实验的头疼
现在,我在根目录下建立/zhfont 目录,并将simsun.ttf拷贝过来,通过实验,/etc/fonts.conf 只要做三处修改,就不再会有缺字的现象了:在alias中,针对sans-serif和monospace字体族,都将SimSun置于最顶端,就彻底消除了缺字现象(当然,是指Simsun字库本身范围内)。另外,放置simsun.ttf的目录也该加入font.conf之中。
我猜测其原因还是字模选择的顺序问题引起的,具体牵涉到哪个字库,还需要进一步实验。
Konsole下面也可以很正常显示中文。(随便选取一个字体即可)
当然,现在只是可以很好的现实汉字的正常形态,至于什么黑体斜体之类的效果,还没有哦。


以下是/etc/fonts/font.conf中的部分内容,只改了三处,用红色标出

代码: 全选

....
[color=red]<dir>/zhfont</dir>[/color]
....

....
 <alias>
  <family>sans-serif</family>
  <prefer>
[color=red]<family>SimSun</family>[/color]
   <family>Bitstream Vera Sans</family>
   <family>Verdana</family>
   <family>Nimbus Sans L</family>
   <family>Luxi Sans</family>
   <family>Arial</family>
   <family>Helvetica</family>
   <family>Nachlieli</family>
   <family>Kochi Gothic</family>
   <family>Baekmuk Dotum</family>
   <family>SimSun</family>
   <family>FreeSans</family>
  </prefer>
 </alias>
 <alias>
  <family>monospace</family>
  <prefer>
[color=red]<family>SimSun</family>[/color]
   <family>Bitstream Vera Sans Mono</family>
   <family>Andale Mono</family>
   <family>Courier New</family>
   <family>Luxi Mono</family>
   <family>Nimbus Mono L</family>
   <family>Miriam Mono</family>
   <family>Kochi Gothic</family>
   <family>Baekmuk Dotum</family>
   <family>FreeMono</family>
  </prefer>
 </alias>
贴几张图表示效果吧,当然,现在是在安装了SimSun字体以后的效果了
附件
浏览器效果
浏览器效果
Konsole终端效果(显示Windows分区下的中文文件目录名)
Konsole终端效果(显示Windows分区下的中文文件目录名)
系统菜单的效果
系统菜单的效果
Xmms播放列表的效果
Xmms播放列表的效果
freespirit
帖子: 42
注册时间: 2005-05-15 17:26
联系:

#6

帖子 freespirit » 2005-08-28 11:19

呵呵,大哥真强啊!
这样的问题我也遇到过,不过整了几天不见任何进展就放弃了,
不过我有看到希望了
回头我也试试
惭愧啊!
:oops: :oops:
easyt
帖子: 6
注册时间: 2005-08-28 16:44
联系:

#7

帖子 easyt » 2005-08-28 16:52

我也是新手,我也是照着那篇“如何用XP的字体来美化”的文章来做的,复制了throma.ttf,SURSONG.ttf,SimSUN.ttc这几个文件到fonts里面,然后改fonts.conf来的!和楼主的做法差不多,现在看着就很好看了,不过我用的是gnome

如果有哪位大侠能把这些做成智能的脚本就好了!我也同感
我喜欢Ubuntu!
我用Ubuntu!
头像
bluebell
帖子: 264
注册时间: 2005-05-08 21:28

#8

帖子 bluebell » 2005-08-28 17:23

就是QT3 的问题啦,楼主真有耐心,鉴定完毕。 :lol:
Ubuntu 5.10 Breezy Badger
回复