• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

完美的RH8+gnome+KDE使用simsun的方案

发布: 2007-7-02 21:50 | 作者: admin | 来源: | 查看: 10次 | 进入软件测试论坛讨论

领测软件测试网

  我的意图不安装任何补丁和不屏蔽Xft来使用simsun字库显示gnome和KDE的汉字界面,而保留了RH8使用Xft的速度性能。依使用XTT来为GTK1程序提供汉字驱动,不管怎说目前它令simsun达到很佳的显示效果。

  本贴的方法在RH8的gnome和KDE下使用成功。我的显示器分辨率800x600。

  本方案分为两个部份,第一部分是延续自RH71开始的汉化方案,第二部分是针对RH8的。

第一部分:为Mozilla和一些GTK程序配置xtt

  一、创建simsun字库的目录和编辑fonts.dir文件。

  root注册

  这是第一步,目录的位置由自己定,我是放在/usr/local/下的目录名是zhfonts。为何要这样处理呢?我的Linux有两个分区,一是/分区、二是/usr/local/分区,这样做的好处是/usr/local实际上是个备份区。

  编辑/usr/local/zhfonts/fonts.dir文件。这是基本功,simsun的显示效果和黑体、斜体的产生就看它了。方法不再说明,大家看一下相关的文章

  要强调的是务必要加上

  simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-c-0-iso10646-1

  之类的字体信息(正常体、斜体、黑体、黑斜体等)。

  但gnome2并不需要配置fonts.dir文件。

  在/usr/local/zhfonts目录下:


   cp fonts.dir fonts.scale

 

  二、修改/etc/X11/XF86Config ,/etc/gtk/gtkrc.zh_CN ,/etc/gnome/gtkrc.zh_CN 三个文件

  1、/etc/X11/XF86Config

  对这个文件的修改和以前一样, 大家注意在相关位置进行修改:


  Section "Files"
    RgbPath "/usr/X11R6/lib/X11/rgb"
    FontPath "/usr/local/zhfonts"
    FontPath "unix/:7100"
  EndSection

  Section "Module"
    Load "xtt"
    Load "dbe"
    Load "extmod"
    Load "fbdevhw"
    Load "dri"
    Load "glx"
    # Load "freetype"
    # Load "type1"
    # Load "record"
  EndSection

 

  2、 /etc/gtk/gtkrc.zh_CN


  style "gtk-default-zh-cn" {
    -*-*-medium-r-normal--12-*-*-*-*-*-iso10646-1,*-r-*"
  }
  class "GtkWidget" style "gtk-default-zh-cn"

 

  经测试,如此修改可以很好的解决Gaim不能显示GBK字符集的问题,大家可以试试看能在Gaim中输入(拼音jun)“珺、碅、雋”吗。

  3、/etc/gnome/gtkrc.zh_CN

  将所由字体改成


  fontset = "-misc-simsun-medium-r-normal--12-*-*-*-*-*-iso10646-1"

 

  这一步也是常规的修改,自RH71来几乎没有变化。

第二部分:为gnome2和KDE配置simsun字体

  这是我们要注意的重点,本人经过多次测试特奉献给大家。

  三、修改/etc/fonts/fonts.conf文件

  这是一个很关键的文件。

  必需修改的第一处:


  < !-- Font directory list configured on Mon Sep 9 15:24:30 EDT 2002 -- >

  < dir >/usr/local/zhfonts< /dir >
  < dir >/usr/X11R6/lib/X11/fonts/Type1< /dir >
  < dir >/usr/share/fonts< /dir >
  < dir >~/.fonts< /dir >

  < dir >/usr/local/zhfonts< /dir>
    一行就是指定你的simsun.ttf所在的目录。

 

  必需修改的第二处:


  < !--
  If the font still has no generic name, add sans-serif
  -- >
  < match target="pattern" >
  < test qual="all" name="family" compare="not_eq" >
    < string >Simsun< /string >
  < /test >
  < test qual="all" name="family" compare="not_eq" >
    < string >Simsun< /string >
  < /test >
  < test qual="all" name="family" compare="not_eq" >
    < string >Simsun< /string >
  < /test >
  < edit name="family" mode="append_last" >
    < string >Simsun< /string >
  < /edit >
  < /match >

 

  此处的修改可让不支持汉字的字库使用SimSun字库 ,非常有用。

  此处也很有必要修改:


   < match target="font" >
         < test name="lang" compare="contains" >
               < string >ko< /string >
          < /test >
          < edit name="hinting" mode="assign" >
               < bool >false< /bool >
          < /edit >
     < /match >
     < match target="font" >
          < test name="lang" compare="contains" >
               < string >zh< /string >
          < /test >
          < edit name="hinting" mode="assign" >
               < bool >true< /bool >
          < /edit >
      < /match >

 

  去掉中文(zh)字体的平滑功能(将fale改成true)。

  不一定要改的地方:


  < !--
  Accept deprecated @#mono@# alias, replacing it with @#monospace@#
  -- >
  < match target="pattern" >
    < test qual="any" name="family" >
      < string >mono< /string >
    < /test >
    < edit name="family" mode="assign" >
      < string >Simsun< /string >
    < /edit >
  < /match >

  < !--
  Accept alternate @#sans serif@# spelling, replacing it with @#sans-serif@#
  -- >
  < match target="pattern" >
    < test qual="any" name="family" >
      < string >sans serif< /string >
    < /test >
    < edit name="family" mode="assign" >
      < string >Simsun< /string >
    < /edit >
  < /match >

  < !--
  Accept deprecated @#sans@# alias, replacing it with @#sans-serif@#
  -- >
  < match target="pattern" >
    < test qual="any" name="family" >
      < string >sans </string >
    < /test >
    < edit name="family" mode="assign" >
      < string >Simsun< /string >
    < /edit >
  < /match >

 

  本来sans和monospace是可以显示汉字的,经这一改它就无条件的显示SimSun了。当然这样改也许不是很有必要,多几种中文字体总是好事。我就没有改,并用sans来显示桌面的文字。

  到此对文件的修改结束,可以重启X-windows进入gnome了。

  四-1、在gnome内的调整。

  使用“首选项”的“字体”

  (可以看到字体列表里已有了SimSun)

  点击“细节”进入字体绘制细节,将分辨率改成72 点击“关闭”回到字体主窗口

  你也不一定要改这里,在分辨率为96是,9号子相当于我说的12号字。

  以下是选用的参数:

  应用程序字体: Century Schoolbook L 12 反正中文是SimSun就只看英文的效果了。

  桌面字体: Sans 16 为的是保留原RH8的风格

  窗口标题字体: Century Schoolbook L 12

  终端字体 : Ar PL KaitiM GB 14 经比较它用在这最好看

  字体绘制: 最佳形态

  这里实际是指定英文字体,你可以反复的比较最佳的效果,但终端的字体必需支持汉字。

  当然也可以将windows的一些ttf字库考出来,如果只想给gnome2用的话就不需要编辑fonts.dir文件,只要在/etc/fonts/fonts.conf文件中指出路径就可以了。取消字体绘制总有点感到少了RH8的个性。

  当然你也可以全部使用SimSun字体,但要注意这个设置:

  字体绘制: 单色

  这样修改后你的gnome和KDE的汉字界面显示和Xtt驱动SimSun字体的汉字界面显示几乎没二异。

  当你改完了这一切再来看看效果,十分的完美。

  四-2、在KDE下的调整:

  取消字体平滑后选用SimSun字体。

  五、调整mozilla字体:

  将简体中文字体改为:simsun-gb18030.2000-0或simsun-gbk-0,据我的使用来看效果很好。

  不推荐使用gb2312.1980字符集,在有些网站会照成汉字显示问题。

  六、对miniChinput的修改:

  修改/usr/lib/Chinput/Chinput.at文件

  第一处修改:


  chinput.gb18030font = -misc-simsun-medium-r-normal--0-0-0-0-c-0-iso10646- 1

 

  这一行如不改也可以,但我是改了的。

  第二处修改:


  xft.on = YES
  !xft.font.family = zysong18030
  xft.font.family = simsun
  xft.font.size = 11
  xft.anti-aliasing = YES
 

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网