中文字体美化是个很讨厌的事情,无数初学者在这里面浪费了无数时间,做了无数没有意义的事情。但这也是不得不做的,我把 Debian/Ubuntu 所需要的中文字体美化操作步骤详细记录在这里,希望能节约大家一部分时间。

1 安装必要的字体包

Debian 和 Ubuntu 下对中文支持比较好的字体有:ttf-droidttf-wqy-zenhei 和 ttf-wqy-microhei 等,除了文泉驿系列字体外,比较流行的免费中文字体还有文鼎提供的楷体和上海宋,包名分别是: ttf-arphic-ukai 和 ttf-arphic-uming。把这些字体都装上之后,应该就已经具备一个基本能用的中文环境了。

2 修改字体配置文件

在 Ubuntu Precise 之前,中文默认的字体配置效果已经非常好了。但到了 Precise 的时候,韩国新推出了几个免费韩文字体。当然了,免费字体这东西,本来就是多多宜善,但问题就在于,韩国人做的韩文字体里不仅仅有韩文,还包含了中文。而这些字体里的中文部分,不客气地说,实在是丑得可以。而韩国人把这个字体设置成 Ubuntu 里的中文默认字体,这就太让人难以接受了。

为了让中文显示效果更让人可以接受一些,滇狐决定完全屏蔽那几个韩文字体。反正滇狐不懂韩语,因此少了几个韩文字体,对正常生活影响不大了。大家可以参考以下滇狐自己的字体配置文件。将以下内容写到存放到你的家目录下,命名为 .fonts.conf,就可以了。

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
 <alias>
  <family>serif</family>
  <prefer>
   <family>DejaVu Serif</family>
   <family>Bitstream Vera Serif</family>
   <family>Droid Serif</family>
   <family>AR PL UMing CN</family>
   <family>AR PL ShanHeiSun Uni</family>
   <family>Droid Sans Fallback</family>
   <family>WenQuanYi Micro Hei</family>
   <family>WenQuanYi Zen Hei</family>
  </prefer>
 </alias>
 <alias>
  <family>sans-serif</family>
  <prefer>
   <family>DejaVu Sans</family>
   <family>Bitstream Vera Sans</family>
   <family>Droid Sans</family>
   <family>Droid Sans Fallback</family>
   <family>WenQuanYi Micro Hei</family>
   <family>WenQuanYi Zen Hei</family>
   <family>AR PL UMing CN</family>
   <family>AR PL ShanHeiSun Uni</family>
  </prefer>
 </alias>
 <alias>
  <family>monospace</family>
  <prefer>
   <family>DejaVu Sans Mono</family>
   <family>Bitstream Vera Sans Mono</family>
   <family>Droid Sans Mono</family>
   <family>Droid Sans Fallback</family>
   <family>WenQuanYi Micro Hei Mono</family>
   <family>WenQuanYi Zen Hei Mono</family>
   <family>AR PL UMing CN</family>
   <family>AR PL ShanHeiSun Uni</family>
  </prefer>
 </alias>
 <!-- Default Alias -->
 <alias>
  <family>DejaVu Sans</family>
  <default>
   <family>sans-serif</family>
  </default>
 </alias>
 <!-- Generic font families -->
 <match target="pattern">
  <test name="family" qual="any">
   <string>serif</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>DejaVu Serif</string>
  </edit>
 </match>
 <match target="pattern">
  <test name="family" qual="any">
   <string>sans-serif</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>DejaVu Sans</string>
  </edit>
 </match>
 <match target="pattern">
  <test name="family" qual="any">
   <string>monospace</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>DejaVu Sans Mono</string>
  </edit>
 </match>
 <match target="pattern">
  <test name="family" qual="any">
   <string>monospace</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>DejaVu Sans Mono</string>
  </edit>
 </match>
 <!-- Disable ugly Nanum fonts -->
 <match target="pattern">
  <test name="family" qual="any">
   <string>NanumGothic</string>
   <string>NanumGothicCoding</string>
   <string>NanumMyeongjo</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>Droid Sans Fallback</string>
  </edit>
 </match>
 <!-- Aliases -->
 <match target="pattern">
  <test name="family" qual="any">
   <string>KaiTi</string>
   <string>SimKai</string>
   <string>楷体</string>
   <string>楷体_GB2312</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>AR PL UKai CN</string>
   <string>AR PL ZenKai Uni</string>
  </edit>
 </match>
 <match target="pattern">
  <test name="family" qual="any">
   <string>NSimSun-18030</string>
   <string>NSimSun</string>
   <string>SimSun-18030</string>
   <string>SimSun</string>
   <string>宋体</string>
   <string>新宋体</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>AR PL UMing CN</string>
   <string>AR PL ShanHeiSun Uni</string>
  </edit>
 </match>
 <match target="pattern">
  <test name="family" qual="any">
   <string>Microsoft YaHei</string>
   <string>STHeiti</string>
   <string>SimHei</string>
   <string>微软雅黑</string>
   <string>黑体</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>Droid Sans Fallback</string>
   <string>WenQuanYi Micro Hei</string>
   <string>WenQuanYi Zen Hei</string>
  </edit>
 </match>
 <!-- Anti-alias -->
 <match target="font">
  <edit name="embeddedbitmap">
   <bool>false</bool>
  </edit>
 </match>
 <!-- End -->
 <match target="font">
  <edit mode="assign" name="rgba">
   <const>rgb</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hinting">
   <bool>true</bool>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hintstyle">
   <const>hintfull</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="antialias">
   <bool>true</bool>
  </edit>
 </match>
 <dir>~/.fonts</dir>
</fontconfig>

3 修复 LibreOffice 中文方块问题

如果你在安装系统的时候选择系统默认语言不是中文,安装了 Droid 系列字体的话,系统界面字体又是 Sans-serif 字体族的话,你很有可能遇到打开 LibreOffice 之后看到所有的菜单都是方块的问题。解决这个问题有很多方法,你可以到 /etc/fonts/conf.d/ 下删除 65-droid-sansj-fonts.conf,也可以在那个目录里创建两个符号链接,分别指向 ../conf.avail/69-language-selector-zh-cn.conf 和 ../conf.avail/69-language-selector-zh-cn.conf,或者如果不想修改系统配置文件,而想 per-user 修改的话,还可以在自己家目录的 ~/.fonts.conf.d/ 里链接那两个文件。

4 修改桌面环境字体设置

修改完字体配置后,中文的显示效果应该可以上很大一个层次。但是,为了得到更好的效果,我们还需要对具体应用程序里的字体进行更多配置。

4.1 KDE 下的字体配置

滇狐平时只用 KDE 桌面环境,如果你的桌面环境不是 KDE 的话,之后的部分你也许不能直接照着做,请自己摸索,如果有意见或建议想要分享的话,请于滇狐联系。

KDE 下的字体配置很简单,直接到“系统设置”里找到“公共外观和行为”、“应用程序外观”、“字体”,把所有类别的字体都改成“DejaVu Sans”,等宽字用“DejaVu Sans Mono”即可。此外,建议启用“圆整字体边角”,并到“配置”对话框中把次像素渲染打开,微调样式改为“完整”,这样可以在液晶显示器下取得最好的效果。

4.2 GNOME 下的字体配置

滇狐并没有“系统纯洁强迫症”,虽然滇狐不用 GNOME,但 GNOME 下的软件,滇狐还是用的。为了让 GNOME 下的软件在 KDE 下不至于太突兀,我们还是需要对 GNOME 下的字体进行一定的配置。

4.2.1 GNOME 字体

在低版本的 GNOME 下,配置字体可以通过 gnome-appearance-properties 进行,运行该配置工具,将所有字体均设成“DejaVu Sans”,等宽字体设为“DejaVu Sans Mono”即可,很简单。

在最新版本的 GNOME 下,gnome-appearance-properties 配置工具已经被移除了,所有的配置工作只能通过 gnome-control-center 来完成。但悲剧的是,gnome-control-center 只要检测到你在 KDE 底下,就会拒绝提供配置字体的选项,因此修改 GNOME 程序的字体就只能通过 gconf-editor 进行了。gnome-appearance-properties 里字体配置的各个选项对应的位置分别是:

应用程序字体:/desktop/gnome/interface/font_name

文档字体:/desktop/gnome/interface/document_font_name

桌面字体:/apps/nautilus/preferences/desktop_font

窗口标题字体:/apps/metacity/general/titlebar_font

等宽字体:/desktop/gnome/interface/monospace_font_name

键值的格式是“字体名 空格 尺寸”,例如“DejaVu Sans 9”。在 KDE 下工作时,GNOME 的桌面和标题栏都是不可见的,因此只需要改应用程序字体、文档字体和等宽字体三项就足够了。

4.2.2 GTK 系统字体

在 KDE 下,gnome-settings-daemon 无法启动运行为 GTK/GNOME 程序提供字体配置信息,有的程序能够直接读取 gconf 下的字体配置信息,但还有很多程序会改为读取主目录下的配置文件获取字体相关的配置,如果读不到的话,就会变成非常丑陋的默认样式。为了避免出现这样的情况,我们需要在主目录下为这些程序创建配置文件。由于不同版本的程序读取的配置文件名都不太一样,为了让尽可能多的程序都能读到正确的配置,我们就多创建几个配置文件。在主目录下创建这几个文件:

.gtkrc

.gtkrc-1.2-gnome2

.gtkrc-2.0

.gtkrc-2.0-kde

文件的内容如下:

include ".gtkrc-2.0-kde4"

然后创建 .gtkrc-2.0-kde4,内容如下:

gtk-xft-hinting = 
gtk-xft-hintstyle = 
gtk-cursor-theme-name = "oxy-black"

注意:开头 include 后面包含的文件和 gtk-theme-name 指定的主题名需要根据你的个人习惯作相应的修改,不要直接照抄我这里的配置。因为首先,我选择的 GTK 主题未必是你喜欢的,其次,我安装的 GTK 主题你未必也安装了,因此务必根据你的个人习惯作相应的修改。

4.3 其它软件

完成以上配置后,整个系统就已经非常适合人类生活了,接下来我们再对部分程序做一些简单的微调。

4.3.1 QTerm

QTerm 有自己的字体配置,并不直接遵循系统字体来,根据自己的喜好配置一下就好。

 
 
5
 

【crunch bang】字体美化的更多相关文章

  1. 【crunch bang】中文美化

    原文连接:http://edyfox.codecarver.org/html/debian_testing_chinese.html 中文字体美化是个很讨厌的事情,无数初学者在这里面浪费了无数时间,做 ...

  2. Windows下的字体美化

    转自HJK的博客 许多人钟情于Mac很大一部分是因为Mac优雅的字体渲染,Windows原生的效果很难做得到,即便是开启了CleartType效果也不尽如人意.不论是微软本身的审美原因还是历史包袱,与 ...

  3. Ubuntu 所需要的中文字体美化操作步骤

    中文字体美化是个很讨厌的事情,无数初学者在这里面浪费了无数时间,做了无数没有意义的事情.但这也是不得不做的,我把 Debian/Ubuntu 所需要的中文字体美化操作步骤详细记录在这里,希望能节约大家 ...

  4. CentOS7.5字体美化

    背景知识 有衬线 (Serif) 无衬线 (Sans Serif) 和等宽 (Monospace) 字型 1 有衬线 (Serif) 字型是比较正式的字体,比划粗细不一,在笔划的边缘有装饰部分(我的理 ...

  5. Linux字体美化实战(Fontconfig配置)(转)

    原文地址:http://www.jinbuguo.com/gui/linux_fontconfig.html 本文的主题是Linux环境下的字体美化,但是首先得要有字体,然后才能谈美化.所以第一件事就 ...

  6. Ubuntu 14.04 64位字体美化(使用黑文泉驿)

    Ubuntu 14.04安装和升级后,,斜体字体变得很难看,昨天,我得到一个晚上,最终,管理一个线索,这里整洁. 在线调研后,.一致的观点是,,使用开源字体库文泉驿理想的黑色字体效果,效果甚至没有丢失 ...

  7. [CrunchBang]中文字体美化

    安装必要的字体包 sudo apt-get install ttf-droid ttf-wqy-zenhei xfonts-wqy ttf-wqy-microhei ttf-arphic-ukai t ...

  8. 【crunch bang】程序中文化

    在应用程序中配置使用中文显示. # apt-get install locales # dpkg-reconfigure locales 安装文泉驿-微米黑字体: sudo apt-get insta ...

  9. 安装fcitx [Crunch bang] [debian]

    第一步: sudo apt-get install fcitx fcitx-sunpinyin  fcitx-ui-classic fcitx-table fcitx-config-common fc ...

随机推荐

  1. Java学习-014-文本文件写入实例源代码(两种写入方式)

    此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: /** * @fun ...

  2. POJ 1041问题描述

    Description Little Johnny has got a new car. He decided to drive around the town to visit his friend ...

  3. ZooKeeper常见问题(转)

    这段时间来,也在和公司里的一些同学交流使用zk的心得,整理了一些常见的zookeeper问题.这个页面的目标是解答一些zk常见的使用问题,同时也让大家明确zk不能干什么.页面会一直更新. 客户端 1. ...

  4. ios runtime swizzle

    ios runtime swizzle @implementation NSObject(Extension) + (void)swizzleClassMethod:(Class)class orig ...

  5. Oracle数据库之SQL基础(二)

    一.约束 ❤ 1.约束概述 约束作用: (1)定义规则 (2)确保完整性:包括数据的精确性.可靠性.以确保数据不会出错,或者尽量减少出错. 约束的类型: (1)非空约束 (2)主键约束 (3)外键约束 ...

  6. XCode环境变量及路径设置

    一般我们在xcode里面配置包含工程目录下头文件的时候,都要关联着相对路径和绝对路径,如果只是自己用这个项目,用绝对路径的问题不大,但是如果你把工程发给别人,别人就要在改这个绝对路径,这时候绝对路径的 ...

  7. iOS - (base64对字符串加解密)

    今天公司让做支付系统,为了安全起见,需要对一些数据进行加密,然而我首想到的就是 base64 ,严格来说这不是一种加密方式,这只是将原有的一些字符串或者其它的一些文本进行一个转化而已,就是转化成数字, ...

  8. SVN提交.a文件的方法

    选择菜单View-->Ignored Files,这样就会显示出ignored的文件,找到你要上传的.a文件,右键“Add”就可以了.

  9. HBase -- 基于HDFS的开源分布式NoSQL数据库

    HBase(Hadoop Database)是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,我们可以利用HBase技术在廉价的PC上搭建起大规模结构化存储集群.同Google的Bigtable ...

  10. 支持正则或通配符的hashmap

    RegexpKeyedMap http://wiki.apache.org/jakarta/RegexpKeyedMap RegexHashMap https://heideltime.googlec ...