Mac OS X的字体[2]

《Mac OS X的字体》发布之后,甫鸼提出了一系列质疑。当然他没有否认很多人认为《Vista puts Mac OS X font rendering to shame》的作者是微软的枪手(不过修辞十分诡异),但是回避了自己对该文的看法。

我对Mac OS X的字体确实有所偏爱,周围的很多人此的看法与我不同。其实当下有多少人与我感觉异同的重要性在其次,我更希望搞明白的是人们做出偏爱Windows的判断有多少成分是出于习惯,有多少是出于(潜意识中的)深层次原因。但是这个问题并不那么好回答。

Vista puts Mac OS X font rendering to shame》(并非原文,而是附带的评论和调查)的意义在于给这个问题添加了一个可信度很高的旁证(尽管由此得出确定性的结论还显轻率)——62%的参与投票的人更欣赏Mac OS X的字体渲染效果,也许可以一定程度上说明身边人的不同看法在于这些人群接触Mac的比例还是不如北美高;及评论中给出的各方面解释,很大程度上说明从深层次原因看还是Mac OS X的方式更有优势;综合说来,很多偏爱Windows的判断中武断的习惯的成分更高一些。搞清楚这个一方面满足了我的好奇心,一方面也是对未来的一种预测——基于习惯的选择往往会逐渐让位给基于其它本质原因的选择。(当然有些习惯的力量是巨大到无法改变的,比如键盘的QWERT排列。不过Mac OS X已经取得的9%的份额让我相信关于字体渲染的习惯没有巨大到无法改变。)

下面讨论一下甫鸼的疑问。第一是显示器分辨率的提高能否“自动”减轻Mac OS X字体边缘发虚的问题。首先说明,这里的分辨率不是像素数,而是每英寸像素数。所以iPhone的屏幕虽小,分辨率却高于大多数LCD的分辨率。在解释“能”与“不能”之前,重申一点,边缘发虚是一个缺点,但是在无法达到完美的计算机方案中称其为代价更加合适,而《Mac OS X的字体》已经解释了这种代价是合理并且值得的。也就是说,即使这个问题还停留在今天的程度,对于字体渲染的整体优劣也并无影响。

下面说说这个问题能否被“自动”减轻,首先举两个例子,第一是《Vista puts Mac OS X font rendering to shame》的评论2.2.1.1.4,在评论者的旧CRT显示器坏掉之后,他为自己的旧Mac接上了新的LCD,同样的硬件(除了显示器),同样的渲染算法(苹果从Mac OS 9就采用的),在接上新LCD之后字体的效果焕然一新;第二是很多人使用了iPhone之后,都感觉iPhone的显示效果比LCD要好;而且当整个大页面缩小到小于iPhone屏幕的时候,虽然不适合阅读,但是页面的布局和整体效果是不错的,而且很多情况下单个字体仍然可以分辨,而基于Windows CE的设备在相同的比例下字体已经完全不可辨认。

例子就是例子,我不想用两个例子就粗暴的泛化到一般情况,但是实例也有其独特的说服力。另外从推理的角度看,重视准确度的渲染方案和一般图形的渲染方案相比原则上更为一致。一般图形的反走样算法也是重视准确度的。也就是说,在Mac OS X上对一条普通贝塞尔曲线的反走样(anti-alias)算法基本上与Mac OS X上一个字型上的贝塞尔曲线的渲染方法是一致的。而Windows上对字型的处理是区别于一般图形的,你不可能把Windows对字型的那种强行修改以适应显示器像素的做法应用到普通的斜线或是曲线的反走样上,所以Windows的字型渲染在Windows的整体图形方案中是ad-hoc的(从《Mac OS X的字体》的截图中,IE对于日文字体中的斜线的处理可以看出,如果真的把Windows的字型渲染方式应用到斜线上是多么恐怖——因为日文假名中存在比较明显的斜线,而拉丁字母中比较少见长斜线,所以这一现象对于英语使用者并不熟悉)。

总的说来,实例说明Mac OS X的方式不经太多调整就能很好的适应显示器分辨率的提高。而推理说明,即使Mac OS X的字体渲染真的需要调整,只要借鉴普通图形方案的调整经验就好。另外,苹果始终坚持同时控制软硬件最后把关的做法也能占到先机,可以比较严格的控制Mac OS X运行的硬件平台,从而选择适合Mac OS X的显示器材。

对于字体选择的问题,很高兴Windows缺省自带的文本编辑器采用了两级管理的方式。不过Word 2007和很多其它更专业的应用似乎没有这样做:

基本上似乎是因为Windows APIs主要还是用font face来列出字体。文本编辑器自己做了归类管理。但是很多功能更全的应用似乎把精力花在了别处。高兴的是,Office 2008 for Mac的字体管理是两级的。另外在《Mac OS X的字体》中有一点没有提到,Mac OS X的字体既可以在系统级别安装,也可以为用户单独安装,这一点似乎也是Windows没有的。(由此也一窥Mac OS X的Unix血统让其多用户风格自然呈现,而Windows的单用户风格难以在短期内消除。)

接着是Safari在Windows上的字体问题。严格的说,这个不算是字体渲染的问题,因为很明显是字体的选择出现了问题。(OK,我承认我也引入了字体管理这个和渲染不相关的问题。)这个问题我得研究一下,因为手头没有在用Windows,而且还要下载Safari for Windows。不过,Mac OS X本身的字体渲染体验仍然是完美的。而且字体选择的问题终究没有字体渲染的问题那么难以修改。 🙂

最后是关于苹果软件的字体渲染功能的提供问题。上面说的字体渲染策略都是指Windows平台上和在Mac OS X上由操作系统提供的方案,准确的说在Windows平台上是GDI,在Mac OS X上是Quartz。当然一个在Windows平台上的应用选择不使用GDI的字体渲染方案也可以,那就是用GDI的低级原语(如像素)来自行渲染,Adobe Acrobat for Windows和Safari for Windows基本上就是这样做的典型例子。不用Quartz提供的字型渲染也可以,但是似乎没有Mac OS X的应用这么做。FireFox、Opera在每个平台上都是直接使用平台本身的渲染的,Microsoft Office也是如此。所以看看他们的渲染效果更有代表性。

发表评论

Fill in your details below or click an icon to log in:

WordPress.com 徽标

您正在使用您的 WordPress.com 账号评论。 注销 /  更改 )

Twitter picture

您正在使用您的 Twitter 账号评论。 注销 /  更改 )

Facebook photo

您正在使用您的 Facebook 账号评论。 注销 /  更改 )

Connecting to %s


%d 博主赞过: