当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 17 篇帖子 ]  前往页数 1, 2  下一页
作者 内容
1 楼 
 文章标题 : 打造媲美苹果的Ubuntu桌面:字体,中文,效果
帖子发表于 : 2007-08-19 3:06 

注册: 2006-12-21 18:05
帖子: 16
送出感谢: 0 次
接收感谢: 0 次
*本文使用了版权字体,如果有违版规,我会修改或改发其他地方

这几天装了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>


重新登录,字体显示应该好了不少。不过我们还没完成,如果仔细观察,小字体的显示还是颇为模糊,这是由于小字体显示时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-howto/Font.html#intro)有篇详解。

幸运的是现在有人提供了加上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


然后在命令行下,下载gnp key:

代码:
wget http://www.telemail.fi/mlind/ubuntu/937215FF.gpg -O- | sudo apt-key add -


安装

代码:
sudo aptitude update
sudo aptitude install libfreetype6 libcairo2 libxft2


最后动一下字体设置,我用的是(Autohinting->Always->No bitmaps)

代码:
sudo dpkg-reconfigure fontconfig-config
sudo dpkg-reconfigure fontconfig


退出重新登录,字体是不是清晰了很多?注意你浏览器地址栏里的“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文件里添这么几句:

代码:
<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>


3. Gnome桌面主题

这里下载(http://www.gnome-look.org/content/show.php/show.php?content=56577)苹果的控件主题,在systems->preferences->themes中导入。这里(http://www.gnome-look.org/content/show.php/OsX_MoD?content=54851&PHPSESSID=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


为xgl建一个session:
添加一个/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


然后建一个/etc/X11/sessions目录,里面添加xgl.desktop文件,内容是

代码:
[Desktop Entry]
Encoding=UTF-8
Name=Xgl
Exec=/usr/local/bin/startxgl.sh
Icon=
Type=Application


然后重新登录,记得登录时点左下角选xgl session,如果没有问题,我们开始安装Compiz Fusion。

添加Compiz Fusion的源:

代码:
deb http://download.tuxfamily.org/3v1deb feisty eyecandy
deb-src http://download.tuxfamily.org/3v1deb feisty eyecandy


下载key,安装Compiz Fusion:

代码:
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->conpizconfig settings manager里面选你喜欢的桌面效果。

我们希望每次启动时,让compiz自动运行,到system->preferences->sessions->startup programs里点add,把compiz --restart添进去。

现在,苹果风格的窗口边框还没有加上,下载(http://www.taimila.com/files/DreamAccurate-OSX-Emerald-theme.emerald)这个主题。由于这是一个emerald主题,我们需要先安装emerald才能使用它,有了compiz,安装emerald很方便:

代码:
sudo apt-get install emerald


启动emerald
代码:
emerald --replace

然后到system->preferences->emerald theme manager里面,导入下载的主题,选中他,就应用上了,如果没有的话,再运行一次emerald --replace。

最后,把emerald --replace也添加到session startup programs里面。

这样,我们每次登录,就得到一个字体美观,酷似Mac OS的界面了。

注:

本文关于配置苹果的Gnome主题,主要参考
http://www.taimila.com/?q=node/11,这里还有其他的苹果桌面特性的配置方法。
关于中文的配置,参考
http://forum.ubuntu.org.cn/about18638.h ... be9d112441
安装compiz fusion的部分可参考
http://ubuntuforums.org/showthread.php?t=485346


附件:
yahei_chinese.png
yahei_chinese.png [ 400.56 KiB | 被浏览 15140 次 ]

song_chinese.png
song_chinese.png [ 180.75 KiB | 被浏览 2460 次 ]

desktop1680by1050.png
desktop1680by1050.png [ 908.08 KiB | 被浏览 2429 次 ]



最后由 sandorf 编辑于 2007-12-13 17:42,总共编辑了 1 次
页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-08-19 3:44 
头像

注册: 2006-05-13 4:02
帖子: 10606
送出感谢: 0 次
接收感谢: 7
搞那么大的字号,不好看才怪。
autohint很好么?我这里从来都很糊。


_________________
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-08-19 3:58 

注册: 2006-12-21 18:05
帖子: 16
送出感谢: 0 次
接收感谢: 0 次
我的显示器1680*1050的,所以在我这儿看起来字不大


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-08-19 4:07 
头像

注册: 2006-05-13 4:02
帖子: 10606
送出感谢: 0 次
接收感谢: 7
。。。
不要歧视小屏幕用户阿,有多少人用20'以上LCD的阿,不过你的字体算是非正常的大了,就算是大屏幕也好。


_________________
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-08-19 11:12 

注册: 2007-01-28 0:51
帖子: 441
送出感谢: 0 次
接收感谢: 0 次
.fonts.conf文件的最后内容是不是那3段的直接复制粘贴就好了?


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2007-08-19 12:52 

注册: 2006-12-21 18:05
帖子: 16
送出感谢: 0 次
接收感谢: 0 次
zhuqin_83 写道:
。。。
不要歧视小屏幕用户阿,有多少人用20'以上LCD的阿,不过你的字体算是非正常的大了,就算是大屏幕也好。

哦,我明白了,我用的是笔记本的LCD,只有15'',所以这种分辨率下我必须把字体调大(112 dot per inch),要不然看不清了。要是20''以上的LCD,就不必了。

jackallen 写道:
.fonts.conf文件的最后内容是不是那3段的直接复制粘贴就好了?

对,注意最后一个</fontconfig>的位置。


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2007-08-19 13:01 
头像

注册: 2006-05-13 4:02
帖子: 10606
送出感谢: 0 次
接收感谢: 7
在高清屏下什么字体都好看的,那些边缘的东西都很精细,字体调大了也没什么。


_________________
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2007-08-19 13:13 

注册: 2006-12-21 18:05
帖子: 16
送出感谢: 0 次
接收感谢: 0 次
zhuqin_83 写道:
在高清屏下什么字体都好看的,那些边缘的东西都很精细,字体调大了也没什么。

截一个90dpi的做参考,英文还不错,中文有点模糊


附件:
desktop1680by1050_90dpi.png
desktop1680by1050_90dpi.png [ 1.06 MiB | 被浏览 3142 次 ]

页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2007-08-19 14:03 
头像

注册: 2006-05-13 4:02
帖子: 10606
送出感谢: 0 次
接收感谢: 7
英文好看是正常的,一共才几个字母,再弄不好看就别混了。
中文最好看的还是圆体。


_________________
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo


页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2007-08-20 11:25 
头像

注册: 2007-05-11 11:46
帖子: 80
送出感谢: 0 次
接收感谢: 0 次
新手问题


~/.fonts/目录
在哪里的?

~/是什么意思


_________________
Ubuntu & Windows XP SP2 & Windows 7
AMD Athlon64 2800+
MSI K8T Neo-V v2.0
Colorful Radeon 9550
Kingston DDR400 512M
Maxtor 80G
MAG B72


页首
 用户资料  
 
11 楼 
 文章标题 :
帖子发表于 : 2007-08-21 13:23 

注册: 2006-12-21 18:05
帖子: 16
送出感谢: 0 次
接收感谢: 0 次
hanhelia 写道:
新手问题


~/.fonts/目录
在哪里的?

~/是什么意思


~就是你自己的用户目录


页首
 用户资料  
 
12 楼 
 文章标题 :
帖子发表于 : 2007-08-26 0:32 

注册: 2007-05-22 15:04
帖子: 5
送出感谢: 0 次
接收感谢: 0 次
终于找到字体的完美解决方案了!
什么时候ubuntu 8有这么好的字体风格就好了。

将这文章美化后的效果贴出来给大家对比, 我是1024x768分辨率,ibm r50的本子


附件:
文件注释: 美化后,字体黑度有所增加,看起来舒服一点
2.png
2.png [ 12.87 KiB | 被浏览 2122 次 ]

1.png
1.png [ 9.08 KiB | 被浏览 15751 次 ]
页首
 用户资料  
 
13 楼 
 文章标题 :
帖子发表于 : 2007-09-02 18:15 
头像

注册: 2007-07-24 22:23
帖子: 241
送出感谢: 0 次
接收感谢: 0 次
我的英文、中文都好了,数字还是原样 :oops:


_________________
Linux 2.6.25-ARCH #1 SMP PREEMPT Mon Jul 14 15:25:51 UTC 2008 i686 GenuineIntel GNU/Linux


页首
 用户资料  
 
14 楼 
 文章标题 :
帖子发表于 : 2007-09-16 21:48 

注册: 2005-12-06 15:49
帖子: 174
送出感谢: 0 次
接收感谢: 0 次
12楼的tahoma hint过度,字体已经变形。看数字"3"上大下小,正常tahoma的"3"应该是上小下大


_________________
开源软件是计算机工业最宝贵的财富。


页首
 用户资料  
 
15 楼 
 文章标题 :
帖子发表于 : 2007-09-16 22:21 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
标题栏高光是败笔


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 17 篇帖子 ]  前往页数 1, 2  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译