|
阅读:3310回复:3
[原创]Ubuntu Linux下使用Firefox Nightly的字体微调问题
最近装了个Ubuntu,本来打算一如既往地使用Firefox 3.1(后来变成3.2)的nightly builds,但是一个很明显的不同就是Ubuntu底下
用官方编译的每夜版的字体显示有问题,我的设置是LCD次像素平滑-轻微(因为轻微比较黑,完全的话太淡了,我使用的LiHei Pro不 够黑)。 结果效果图就像我前一阵子的问题所示,Firefox的字体很单薄
在bugzilla上看了不少汇报这个现象的,有说是Firefox的问题,有说是freedesktop的问题 Bug 458612 – (Ubuntu) system fontconfig settings override GNOME font rendering screen settings Bug 404637 – Excessive color fringing in default builds vs. --enable-system-cairo builds on Ubuntu Bug 456578 – Font rendering regression (hinting) Bug 400265 – trunk uses wrong (unwanted) rendering engine for fonts Bug 462798 – don't pass cairo_font_options_t* between system and moz cairo (wrong hint style) Bug 404637 – Excessive color fringing in default builds vs. --enable-system-cairo builds on Ubuntu 但是ubuntu自带的Firefox 3.0.x是ok的。 经过一段时间的排查,问题可能是在编译设置方面,ubuntu的Firefox编译选项中有一个--enable-cairo-system,官方的没有。让我 确定这个选项可以改变字体显示效果的例子是ubuntu第三方源里面有一个firefox 3.1,用下面的源: deb http://ppa.launchpad.net/fta/ubuntu intrepid main 然后 sudo apt-get install firefox-3.1 即可装上一个名为Shirekoto的浏览器(以下称之为Shirekoto),出现在 开始菜单-互联网 里。 这个版本的about:buildconfig里面同样是有“--enable-cairo-system”的选项,于是它也能够获得期待的微调效果。 考虑到官方可能还没有这么快修复上述bugs,我打算目前先使用这个Shiretoko。但是刚刚装上一个扩展,重启后就出现了类似于语 言包失效的黄底页面,里面的错误提示是什么“XML解析错误:未定义的实体”,Firefox无法启动。 抓狂许久后,发现问题可能出现在Ubuntu Firefox里面拥有一个“Ubuntu Firefox Modifications”,并且有一个中文语言包,跟官方的 Nightly表现不同,这个Shirekoto好像可以调用系统中的中文语言包,因为很多地方的显示用的是中文。于是一点点地寻找这个语言 包在哪里,因为这个版本是装在系统目录中的,配置文件也并不全在用户的HOME目录中。 最终我找到了出问题的位置: /usr/lib/firefox-addons/extensions /usr/lib/xulrunner-addons/extensions 这两个目录下的 langpack-zh-CN@firefox-3.0.ubuntu.com/ langpack-zh-TW@firefox-3.0.ubuntu.com/ langpack-zh-CN@xulrunner-1.9.ubuntu.com/ langpack-zh-TW@xulrunner-1.9.ubuntu.com/ 造成了Shirekoto试图调用中文语言包(而事实上语言包并不兼容),于是Shirekoto无法启动。 我的做法是把他们备份到某个目录中后删除(也就是mv命令), kmc@Linux-kmc:/usr/lib/firefox-addons/extensions$ sudo mv langpack-zh-CN@firefox-3.0.ubuntu.com/ langpack-zh-TW@firefox-3.0.ubuntu.com/ /home/kmc/ffbackup/ kmc@Linux-kmc:/usr/lib/xulrunner-addons/extensions$ sudo mv langpack-zh-CN@xulrunner-1.9.ubuntu.com/ langpack-zh-TW@xulrunner-1.9.ubuntu.com/ /home/kmc/ffbackup/ 问题解决。不过实际应用的时候我这个Shirekoto也经常不能启动, 最终采用的是命令行加--sync来启动,也就是 firefox-3.1 --sync 运行起来感觉比较慢,滚屏的时候也有比较高的CPU占用(不过官方版的也差不多,谁叫Ubuntu的鼠标滚轮太慢让咱不得不用 Yet Another Smooth Scrolling呢)。目前来说是凑合了,期待官方版尽快修正bug,能够让Firefox调用系统自己的微调设置。 |
|
|
|
1楼#
发布于:2008-12-14 23:42
自已编译的,加上了enable-default-toolkit=cairo-gtk2和enable-xft
把WINDOWS的雅黑移植到linux,看看效果怎样 PS:滚动不流畅可以把3D特效关掉 |
|
|
|
2楼#
发布于:2008-12-14 23:42
你的这个效果不错,就是英文字体好像是粗体?
我试着编译过,编译了三个小时完成,结果找不到编译出来的东西在哪里……dist/bin里面没有 鼠标滚动不是不流畅,而是本来就慢,因为没有系统级的指定滚动行数,用Acrobat Reader看PDF就成了噩梦之一。 |
|
|
|
3楼#
发布于:2008-12-14 23:42
在目录里搜索FIREFOX啊,看放在哪里,运行看看能不能启动 我编译时反正用GCC4。3。2加PGO过不了,就直接make -j2 然后make install就在dist/bin里生能firefox |
|
|