这9个字体文件中,Droid Sans Fallback 体积明显较大,达到4.2MB,而其他的只有一百多KB。原来,其他字体只包含了西方文字字符,因为西方文字都是拼音文字,只需要少量字符就可以拼成各种单词,而中日韩等东亚文字基于“型”而不是基于“声”,因此字符成千上万,非常多。在计算机系统中,为西方文字准备的字体都非常小,不包含东亚字符,为了解决在使用西方字体时无法显示东亚文字的问题,就采用了目前这种方式:将一种字体与另一种(或多种)字体链接,遇到第一种字体无法显示的字符,自动调用链接的字体来显示。
例如在 Android 系统中,Droid Sans 是默认字体,只包含西方字符,应用程序默认情况下都会调用它;而 Droid Sans Fallback 包含了东亚字符。当需要显示的字符在 Droid Sans 字体中不存在(如汉字),即没有对应编码的字符时,系统会到 Droid Sans Fallback 中去寻找相应编码的字符,如果找到,则使用 Droid Sans Fallback 字体来显示它,如果仍然找不到该编码对应的字符,则系统无法在屏幕上显示出这个字符。
各种操作系统中都有这样的运行机制,例如在英文版的 Windows 7 系统或英文版的应用软件中,界面默认采用的是在开发 Vista 时专门为屏幕显示而全新设计的 Segoe UI 字体,其中并不包含中文字符,但当系统需要显示中文字符时,会自动去调用对应的“微软雅黑”字体来显示(如下图)。当然,这一链接关系是保存在 Windows 注册表中的,我们可以通过修改注册表来改变它。
下面,通过一幅图来对比一下 Droid Sans Fallback 和 微软雅黑这两个长得非常像的字体:
1. 雅黑字体显得更宽。但根据整行汉字来看,雅黑单个字符的宽度并没有更宽,只是减少了边缘的空白,使字间距变小,相邻两个字的笔画几乎要挨在一起了。 2. 雅黑字体笔画分布均匀,如“地”字,四条竖线之间的间隔一致。 3. 雅黑字体布局更合理,如“图”字里面的“冬”看起来重心很稳,而 Droid Sans Fallback 中的“冬”有点要倒的感觉。 4. 由于宽度和笔画布局上的不同,造成雅黑字体看起来更丰满(肥),更紧实。 5. 这两种字体都是非等宽字体,可以看出雅黑的英文字母和数字普遍更宽(中文由于是方块字,宽度没有区别)。 6. 雅黑在可能的情况下笔画更长,例如“号”字下方的勾,这样在小字号时可读性更好。 7. 小字号情况下,雅黑字体仍然显得大一些,并且由于笔画的间距控制得较好,更容易看清楚每个字,相比之下,Droid Sans Fallback 笔画黏在一起的情况稍微严重一些(如“最”字)。 8. 仔细观察一下,小字号时的雅黑字底部并没有完全对齐,而 Droid Sans Fallback 对得很整齐。因此雅黑在小字号时有点大小不一,这也是其广为诟病的一点。