打造媲美苹果的Ubuntu桌面:字体,中文,效果
发表于 : 2007-08-19 3:06
*本文使用了版权字体,如果有违版规,我会修改或改发其他地方
这几天装了Ubunutu 7.04 Feisty Fawn,因为很多美化桌面的方案都对Feisty有很好的支持。对英文和中文字体进行了一些配置后,又用Compiz Fusion加上了一些效果。定制的原则是,尽量少进行系统级的设置,尽量用简单的步骤,把配置文件放在用户目录下。这样以后修改起来,或者重装系统,都很方便。我是使用的英文界面,同时很好地支持中文。先看看效果,类似苹果的OS X:
1. 英文字体
先说英文,如果你对宋体字库包含的英文字体至今没有什么怨言,也不知道Cleartype是什么,那么说明你对字体不甚敏感,可以高兴地跳过这一节。Linux桌面的可用性始终受到字体的负面影响,我无法找到满意的免费字体,所以只好使用有版权的字体。窗口,菜单,对话框的字体使用的都是苹果的Lucida Grande,这里(http://www.osx-e.com/downloads/misc/macfonts.html)有下载。另外Arial, Tahoma, Times New Roman都是显示网页很重要的字体,可以考虑安装msttcorefonts包,或者从Windows中拷贝。
弄到需要添加的字体,直接放在~/.fonts/目录下就行了。可以打开systems->preferences->fonts,把除了等宽字体以外的字体调整成Lucida Grande,显示效果肯定很糟糕。我们需要把autohinting打开:
在你的用户目录下添加一个~/.fonts.conf文件:
重新登录,字体显示应该好了不少。不过我们还没完成,如果仔细观察,小字体的显示还是颇为模糊,这是由于小字体显示时Freetype的autohinting效果不好,Windows和Mac OS中这部分字体的显示都需要借助专业字体中人工添加的hinting信息,使用的是一个叫Bytecode interpretator的东东。不巧的是,苹果在这个领域拥有几个专利,也许会涉及到侵权问题,因此Freetype的作者David Turner虽然实现了这个功能,但是在使用上有所保留。不过他提供了几个libcairo,libxft,libfreetype包的patch,如果你加上patch重新编译这几个包,就能打开这个功能,使小字体在LCD上的显示最优。关于什么是hinting之类的话题,这里(http://avi.alkalay.net/linux/docs/font- ... html#intro)有篇详解。
幸运的是现在有人提供了加上patch的这几个包的repository,我们可以很方便地安装:
编辑你的/etc/apt/sources.list文件加上这两行
然后在命令行下,下载gnp key:
安装
最后动一下字体设置,我用的是(Autohinting->Always->No bitmaps)
退出重新登录,字体是不是清晰了很多?注意你浏览器地址栏里的“www“,斜线没有了毛边。
2007-12-13 UPDATE: 目前Ubuntu 7.10 Gutsy Gibbon已经默认使用了这种针对LCD的subpixel rendering,个人感觉效果比以前使用这些打了补丁的package略逊一些,但是效果已经很不错了,在字体的清晰和字型的美观上达到了比较好的平衡。我喜欢light hinting+ subpixel rendering,字体虽然略模糊,但是字形很好,总的效果类似OSX的显示。
参见: http://ubuntuforums.org/showthread.php?t=555964
2. 中文字体
英文字体没问题,来看中文字体。微软给Vista提供的“微软雅黑“加入了很好的hinting信息,在autohinting下工作的很好。所以如果你往~/.fonts/目录下放入了这个字体,可以在~/.fonts.conf文件里添这么几句:
把雅黑放到宋体的前面,系统会优先选择宋体。初装的系统上出现中文字体大小不一的问题,那是因为系统先选择了日文字体,导致混乱地使用了好几种字体来显示一行文字。用这个方法同时也解决了这个问题。
另外,对于雅黑以外的中文字体,使用平滑的效果在小号字上效果往往不佳。我们可以把小号字的平滑关闭(Windows XP就是这么做的),在~/.fonts.conf里再添一段:
3. Gnome桌面主题
这里下载(http://www.gnome-look.org/content/show. ... tent=56577)苹果的控件主题,在systems->preferences->themes中导入。这里(http://www.gnome-look.org/content/show. ... HPSESSID=6)还有一些不错的图标主题,可以同样导入。不过现在窗口的标题栏和边框还不是苹果风格的,和控件不搭配,这个等我们安装了Compiz Fusion之后再说。
4. 添加Compiz Fusion的桌面效果
虽然花哨的效果本身只能让朋友们惊讶一下而已。但我觉得Compiz Fusion最大的好处在于改善桌面系统的手感。手感这玩意,说不清,道不尽,需要精心雕琢,自由软件往往欠缺的就是这个。3D卡的功能,一定得启用出来,个人感觉桌面的响应提高了很多。
显卡驱动:我用的ati x300的显卡,如果没有安装驱动,建议看这里
https://help.ubuntu.com/community/BinaryDriverHowto/ATI
Feisty安装ati官方驱动很方便。
安装XGL
为xgl建一个session:
添加一个/usr/local/bin/startxgl.sh,里面写上
然后建一个/etc/X11/sessions目录,里面添加xgl.desktop文件,内容是
然后重新登录,记得登录时点左下角选xgl session,如果没有问题,我们开始安装Compiz Fusion。
添加Compiz Fusion的源:
下载key,安装Compiz Fusion:
然后运行
就可以启动compiz了,到system->preferences->conpizconfig settings manager里面选你喜欢的桌面效果。
我们希望每次启动时,让compiz自动运行,到system->preferences->sessions->startup programs里点add,把compiz --restart添进去。
现在,苹果风格的窗口边框还没有加上,下载(http://www.taimila.com/files/DreamAccur ... me.emerald)这个主题。由于这是一个emerald主题,我们需要先安装emerald才能使用它,有了compiz,安装emerald很方便:
启动emerald
然后到system->preferences->emerald theme manager里面,导入下载的主题,选中他,就应用上了,如果没有的话,再运行一次emerald --replace。
最后,把emerald --replace也添加到session startup programs里面。
这样,我们每次登录,就得到一个字体美观,酷似Mac OS的界面了。
注:
本文关于配置苹果的Gnome主题,主要参考
http://www.taimila.com/?q=node/11,这里还有其他的苹果桌面特性的配置方法。
关于中文的配置,参考
about18638.html&sid=28378805246aa7c7935cc8be9d112441
安装compiz fusion的部分可参考
http://ubuntuforums.org/showthread.php?t=485346
这几天装了Ubunutu 7.04 Feisty Fawn,因为很多美化桌面的方案都对Feisty有很好的支持。对英文和中文字体进行了一些配置后,又用Compiz Fusion加上了一些效果。定制的原则是,尽量少进行系统级的设置,尽量用简单的步骤,把配置文件放在用户目录下。这样以后修改起来,或者重装系统,都很方便。我是使用的英文界面,同时很好地支持中文。先看看效果,类似苹果的OS X:
1. 英文字体
先说英文,如果你对宋体字库包含的英文字体至今没有什么怨言,也不知道Cleartype是什么,那么说明你对字体不甚敏感,可以高兴地跳过这一节。Linux桌面的可用性始终受到字体的负面影响,我无法找到满意的免费字体,所以只好使用有版权的字体。窗口,菜单,对话框的字体使用的都是苹果的Lucida Grande,这里(http://www.osx-e.com/downloads/misc/macfonts.html)有下载。另外Arial, Tahoma, Times New Roman都是显示网页很重要的字体,可以考虑安装msttcorefonts包,或者从Windows中拷贝。
弄到需要添加的字体,直接放在~/.fonts/目录下就行了。可以打开systems->preferences->fonts,把除了等宽字体以外的字体调整成Lucida Grande,显示效果肯定很糟糕。我们需要把autohinting打开:
在你的用户目录下添加一个~/.fonts.conf文件:
代码: 全选
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font">
<test compare="more" name="pixelsize" qual="any">
<double>12</double>
</test>
<edit name="autohint" mode="assign" >
<bool>true</bool>
</edit>
</match>
</fontconfig>
幸运的是现在有人提供了加上patch的这几个包的repository,我们可以很方便地安装:
编辑你的/etc/apt/sources.list文件加上这两行
代码: 全选
deb http://www.telemail.fi/mlind/ubuntu feisty fonts
deb-src http://www.telemail.fi/mlind/ubuntu feisty fonts
代码: 全选
wget http://www.telemail.fi/mlind/ubuntu/937215FF.gpg -O- | sudo apt-key add -
代码: 全选
sudo aptitude update
sudo aptitude install libfreetype6 libcairo2 libxft2
代码: 全选
sudo dpkg-reconfigure fontconfig-config
sudo dpkg-reconfigure fontconfig
2007-12-13 UPDATE: 目前Ubuntu 7.10 Gutsy Gibbon已经默认使用了这种针对LCD的subpixel rendering,个人感觉效果比以前使用这些打了补丁的package略逊一些,但是效果已经很不错了,在字体的清晰和字型的美观上达到了比较好的平衡。我喜欢light hinting+ subpixel rendering,字体虽然略模糊,但是字形很好,总的效果类似OSX的显示。
参见: http://ubuntuforums.org/showthread.php?t=555964
2. 中文字体
英文字体没问题,来看中文字体。微软给Vista提供的“微软雅黑“加入了很好的hinting信息,在autohinting下工作的很好。所以如果你往~/.fonts/目录下放入了这个字体,可以在~/.fonts.conf文件里添这么几句:
代码: 全选
<alias>
<family>serif</family>
<prefer>
<family>Bitstream Vera Serif</family>
<family>DejaVu Serif</family>
<family>Microsoft YaHei</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Bitstream Vera Sans</family>
<family>DejaVu Sans</family>
<family>Microsoft YaHei</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Bitstream Vera Sans Mono</family>
<family>DejaVu Sans Mono</family>
<family>Microsoft YaHei</family>
<family>SimSun</family>
</prefer>
</alias>
另外,对于雅黑以外的中文字体,使用平滑的效果在小号字上效果往往不佳。我们可以把小号字的平滑关闭(Windows XP就是这么做的),在~/.fonts.conf里再添一段:
代码: 全选
<match target="font" >
<test name="family" compare="contains" >
<string>Song</string>
<string>Sun</string>
<string>Kai</string>
<string>Ming</string>
<string>宋体</string>
<string>宋体-18030</string>
<string>黑体</string>
<string>新宋体</string>
<string>新宋体-18030</string>
<string>楷体_GB2312</string>
<string>仿宋_GB2312</string>
<string>隶体</string>
<string>SimSun</string>
<string>SimSun-18030</string>:
<string>SimHei</string>
<string>NSimSun</string>
<string>NSimSun-18030</string>
<string>KaiTi_GB2312</string>
<string>FangSong_GB2312</string>
<string>LiSu</string>
</test>
<edit name="globaladvance">
<bool>false</bool>
</edit>
<edit name="spacing">
<int>0</int>:
</edit>
<edit name="hinting">
<bool>true</bool>
</edit>
<edit name="autohint">
<bool>true</bool>
</edit>
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
<test name="pixelsize" compare="more_eq">
<int>12</int>
</test>
<test name="pixelsize" compare="less_eq">
<int>18</int>
</test>
<edit name="antialias" mode="assign" >
<bool>false</bool>
</edit>
</match>
这里下载(http://www.gnome-look.org/content/show. ... tent=56577)苹果的控件主题,在systems->preferences->themes中导入。这里(http://www.gnome-look.org/content/show. ... HPSESSID=6)还有一些不错的图标主题,可以同样导入。不过现在窗口的标题栏和边框还不是苹果风格的,和控件不搭配,这个等我们安装了Compiz Fusion之后再说。
4. 添加Compiz Fusion的桌面效果
虽然花哨的效果本身只能让朋友们惊讶一下而已。但我觉得Compiz Fusion最大的好处在于改善桌面系统的手感。手感这玩意,说不清,道不尽,需要精心雕琢,自由软件往往欠缺的就是这个。3D卡的功能,一定得启用出来,个人感觉桌面的响应提高了很多。
显卡驱动:我用的ati x300的显卡,如果没有安装驱动,建议看这里
https://help.ubuntu.com/community/BinaryDriverHowto/ATI
Feisty安装ati官方驱动很方便。
安装XGL
代码: 全选
sudo apt-get install xserver-xgl
添加一个/usr/local/bin/startxgl.sh,里面写上
代码: 全选
#!/bin/sh
Xgl :1 -fullscreen -ac -accel xvbuffer -accel glxbuffer &
DISPLAY=:1
cookie="$(xauth -i nextract - :0 | cut -d ' ' -f 9)"
xauth -i add :1 . "$cookie"
dbus-launch --exit-with-session gnome-session
代码: 全选
[Desktop Entry]
Encoding=UTF-8
Name=Xgl
Exec=/usr/local/bin/startxgl.sh
Icon=
Type=Application
添加Compiz Fusion的源:
代码: 全选
deb http://download.tuxfamily.org/3v1deb feisty eyecandy
deb-src http://download.tuxfamily.org/3v1deb feisty eyecandy
代码: 全选
wget http://download.tuxfamily.org/3v1deb/DD800CD9.gpg -O- | sudo apt-key add -
sudo apt-get update
sudo aptitude upgrade
sudo aptitude remove compiz-core desktop-effects
sudo aptitude install compiz
sudo aptitude install compizconfig-settings-manager
sudo aptitude install libcompizconfig-backend-gconf
sudo aptitude install compiz-fusion-plugins-extra compiz-fusion-plugins-main compiz-fusion-plugins-unsupported
代码: 全选
compiz --replace
我们希望每次启动时,让compiz自动运行,到system->preferences->sessions->startup programs里点add,把compiz --restart添进去。
现在,苹果风格的窗口边框还没有加上,下载(http://www.taimila.com/files/DreamAccur ... me.emerald)这个主题。由于这是一个emerald主题,我们需要先安装emerald才能使用它,有了compiz,安装emerald很方便:
代码: 全选
sudo apt-get install emerald
代码: 全选
emerald --replace
最后,把emerald --replace也添加到session startup programs里面。
这样,我们每次登录,就得到一个字体美观,酷似Mac OS的界面了。
注:
本文关于配置苹果的Gnome主题,主要参考
http://www.taimila.com/?q=node/11,这里还有其他的苹果桌面特性的配置方法。
关于中文的配置,参考
about18638.html&sid=28378805246aa7c7935cc8be9d112441
安装compiz fusion的部分可参考
http://ubuntuforums.org/showthread.php?t=485346