豹文本呈现

如果你想要了解Panther中所有新功能的概述,到目前为止,我见过的最好的资源是Mark Pilgrim的“Panther中有什么新东西”- 11页,100个屏幕截图,以及几乎所有新内容的逐点概述如果你升级到Panther并且不确定你是否已经检查了所有要检查的东西,请使用Mark的指南(他甚至准备好去Panther的发布日。)

这是概述现在,让我们来看一下 - 一个变化,详细检查。

Panther对Mac OS X的文本服务进行了重大更改,提供了新的格式化设备,范围从大多数无用但华而不实(例如文字阴影和轮廓字母)真正有用(例如真正的印刷小帽和更好的结扎支持)有关详细信息,请参阅Code Poetry上的这篇文章

(当然,虽然这些新的格式化功能很整洁,但我不能说标准UI可以访问它们,字体面板它太拥挤了,它往往会妨碍你,因为它是一个漂浮的调色板,有用的功能(如真正的小帽子)被隐藏,而无用(阴影)突出但您不必喜欢UI来欣赏文本格式化功能。)

但我发现甚至更令人印象深刻的是:Panther中的屏幕文本渲染得到了显着改善这与阴影或连字或新字体无关我只是谈论文本在屏幕上呈现的方式具体来说,在小点尺寸下渲染抗锯齿轮廓字体,其中“小”,我的意思是读取的典型尺寸范围。

本主题 - 小尺寸轮廓字体的屏幕渲染 - 包含各种高度主观的观察这意味着许多合理的人对于看起来更好/更易读/更易读/更舒适/等的看法有不同的看法非常不一样但在进一步研究这些主观性领域之前,我们应该承认整个社会的基本,无可争辩,非主观的基础:

计算机显示器是排版的可怕媒介。

关于计算机显示器为何阅读的插值

现在,唯一其他流行的阅读媒介是纸And, compared to paper, your screen is horrible太可怕了问题只是解决问题之一屏幕上的原子是像素,即使是当今最好的显示器也能提供非常低的每英寸像素分辨率给予或采取,今天大多数显示器提供每英寸90-100点之间的介绍(像素只是屏幕上的点。)

大多数书籍和杂志的印刷版本至少为1200 DPI,有时甚至更高Low-end cut-rate laser printer offer at least 600 DPI. Even cheap USB inkjet printers offer significantly higher resolution than the very best computer displays售价70美元的喷墨打印文本比2000美元的Apple Cinema Display显示的文字更清晰。

在桌面出版的早期,价格合理的激光打印机只提供300 DPI,大多数人都认为在文本大小上,类型看起来相当糟糕字体看起来有点污迹,文字只是感觉很脆弱。今天的计算机显示器无法提供接近300 DPI的分辨率。

Let’s be generous and assume that we’ll soon have displays that offer 150 DPI resolution在这样的显示器上,1英寸的正方形将包含150×150 = 22,500个点将其与旧的300 DPI激光打印机进行比较,其中1英寸的正方形将包含300×300 = 90,000个点关键是因为分辨率是二维的,“两倍”分辨率意味着四倍的点而且,如前所述,300 DPI对于文本大小来说甚至不是那么好600 DPI输出在1英寸的正方形中提供360,000个点,是150 DPI屏幕的16倍此外还没有150 DPI屏幕。

So why do we put up with on-screen reading if the quality of the type is so poor? Because it’s so damn convenient, of course(类似的想法导致我们到处走动,尽管严重的汽车事故非常普遍。)打印所有电子邮件以及您希望在网上阅读的所有内容的想法是有点傻更不用说昂贵和浪费了。

因此,简而言之,这是屏幕阅读的基本事实:类型看起来很糟糕,但内容非常方便。

数字字体的插值

在纸上,类型由墨水或墨粉的微小点组成但即使您将纸张靠近眼睛(墨水涂抹,现代激光打印机分辨率太细),您也无法真正看到这些点。但是,在屏幕上,可以很容易地识别单个像素,如果距离足够近,您甚至可以看到空间之间像素。

设计用于屏幕的字体的最明显的技术是用像素创建字形例如,在“9点”​​屏幕字体中,每个字符被设计为适合9像素高的网格,10像素高的网格中的“10点”字体,等等(网格实际上可能比点大小高出两三个像素,以便考虑像字母一样的下降笔划ÿ要么G,但你明白了。)

这些字体由几个名称调用:屏幕字体,位图字体,像素字体等I’ll call them pixel fonts, because that’s the most apt description — every character at every size was designed pixel-by-pixel.

在传统排版中,类型设计师可以使用曲线比方说,形成一个小号在金属或木材之外,设计师可以雕刻/塑造连续的曲线而对于像素字体,设计者只能使用方形像素这就像通过在一张方格纸上填充正方形来设计字形在小点大小时,任何单个字符的网格都包含很少的正方形。

最初的Macintosh附带了各种精彩的像素字体苏珊卡雷最着名的是原始系统字体芝加哥,它只有一种尺寸--12芝加哥12简直就是崇高考虑到小型单色显示器的局限性,我认为它非常接近像素字体所能得到的效果Apple的设计师显然同意 - 芝加哥12也是iPod的系统字体这是正常尺寸:

芝加哥12,100%

并放大6倍:

芝加哥12,600%

它可能首先打击你设计相同像素字体的多个大小相对简单,但事实并非如此这是非常棘手的以日内瓦9点和10点为例,这是另一位老牌Macintosh真人大小:

日内瓦1x

放大6倍:

日内瓦,6x

从9到10,你会得到一行额外的垂直像素但是因为你只获得了一个额外的行,并且因为你不能分割像素,所以不可能携带相同的内部字符比例看看日内瓦的e和两种尺寸的差异 - 这些是非常不同的字形。

因为每个不同大小的字体是逐个像素地设计的,所以像素字体只能看起来很好的设计尺寸一个强大的像素字体系列可能有9,10,12,14,18,24,36,48和72的大小有些字体只有几种尺寸如前所述,芝加哥只有12号。

大纲另一方面,字体是大多数人在想到字体时所想到的轮廓字体不是设计为像素,而是设计为连续的曲线和线条轮廓字体有多种格式 - PostScript,TrueType,OpenType - 但它们的工作方式相同最重要的是,他们是可扩展性Outline fonts can be used to generate characters at any point size, or even fractional point sizes.

像素字体在屏幕上看起来比在打印时看起来更好这是因为它们的低分辨率与显示器的低分辨率精确匹配,但严重低于打印机的最大分辨率轮廓字体在纸上看起来比在屏幕上看起来更好,因为它们可以扩展以利用打印机的高分辨率。

屏幕字体渲染技术的插值

为了使像素字体在屏幕上看起来很好,有责任在类型设计器上渲染像素字体时,计算机只需要做很少的工作 - 它只需要为每个字符采用逐像素的形状,并在屏幕上逐像素地呈现它们以其自然大小绘制的像素字体被有效地预渲染。

然而,在屏幕上使轮廓字体看起来很好,将责任放在计算机上轮廓字体几乎总是在设计时考虑到高分辨率输出设备无论输出设备是什么 - 屏幕或纸张 - 轮廓字体都需要光栅化在它们显示之前这只意味着可缩放的矢量图形字体变成了网格点对于高分辨率打印机,光栅化字符由许多点组成,即使是很小的尺寸四点激光打印类型可能不适合延长阅读,但它确实清晰。

但是对于轮廓字体的屏幕显示,没有足够的点来做字体正义将高分辨率字母形成一个非常低分辨率的显示器是不可能的或者说,不可能以这样的方式完成它,即字体的某些细节不会丢失。

显而易见的策略 - 假设我们在谈论白色背景上的黑色文字 - 是使用轮廓字体字体来确定哪些像素变黑,哪些像素变白换句话说,黑色文本=黑色像素。

将轮廓字体渲染到屏幕有不同的策略:抗锯齿,a.k.a。文本平滑简而言之,抗锯齿使用渐变色调在屏幕上呈现类型例如,要在白色背景上绘制黑色类型,抗锯齿渲染引擎不仅会生成黑色像素和白色像素,还会生成黑色像素和白色像素灰色像素。

Which pixels to turn which shades of gray, however, is quite a tricky problem. There are dozens of algorithms for anti-aliasing text, and some methods are clearly superior to others例如,Mac OS 9提供的系统范围的抗锯齿非常差在其他情况下,这是一个主观性的问题Photoshop 7提供了四种不同的抗锯齿算法它们都非常好,但结果有时相差很大,特别是对于小型。

在没有消除锯齿的情况下,由于前面提到的鞋头问题,在屏幕上以小尺寸呈现的轮廓字体往往看起来像一个糟糕的传真因此,轮廓字体设计师 - 尤其是打算用于小尺寸的字体的设计者 - 有时会额外努力包含相应的像素字体,否则他们暗示他们的字体提示是一项相当复杂的工作,但外行人的定义在这里很适合我们:a暗示轮廓字体为计算机提供了关于如何在低分辨率屏幕上最佳显示字符的提示。

如果轮廓字体足够暗示,则屏幕上的结果看起来像像素字体这是因为暗示艺术需要对字体设计师的细节进行逐像素的细致关注当轮廓字体没有很好地暗示(或根本没有)时,小尺寸的结果是可怕的。

例如,Mac OS X附带的两种字体:Helvetica和Helvetica NeueHelvetica is an old Mac OS standby; it is therefore no surprise that it is hinted very well at small sizes另一方面,Helvetica Neue似乎根本没有暗示。

现在,这是两个非常相似的字体Helvetica Neue只是重绘Helvetica(更多信息,看这里)通过抗锯齿,它们几乎无法区分:

Helveticas与平滑。

但是,关闭抗锯齿 - 通过提高“外观”(née“General”)System Prefs面板中的阈值 - 差别是,我敢说,触目惊心

Helveticas平滑。

Helvetica看起来就像过去一样Helvetica Neue看起来像大便。

反义架的最新进展被称为子像素渲染,仅适用于LCD显示器子像素渲染基于以下思想:LCD显示器上的每个像素由三个子像素组成:红色,绿色和蓝色子像素渲染的技巧是,而不是使用阴影灰色像素在白色背景上平滑黑色文本,而是使用红色,绿色和蓝色的阴影。

我知道这听起来很疯狂起初我也不相信,但它确实有效这是一种有效的幻觉,渲染文本看起来像是以比显示器实际支持的更高的分辨率生成的微软最近的Windows版本在名称下使用了这种技术的ClearType他们的网站包含很多有关该主题的有用信息。

Mac OS X也支持子像素渲染在System Prefs的“外观”面板中(在Panther中;它是Jaguar中的“常规”面板),您可以选择以下抗锯齿方法:标准,光,中,强Light,Medium和Strong都使用子像素渲染,这就是为什么Medium被标记为“最适合平板”的原因标准是传统的抗锯齿技术(例如仅使用灰色阴影来渲染黑色文本),因此被标记为“最适合CRT”。

如何在Mac OS X 10.3上将前置插值应用于文本渲染

这是事情变得有趣而且有争议的地方。

争议源于这样一个事实,即许多人根本不喜欢反锯齿文本,期间,无论用于实现它的算法或技术如何很多其他人崇拜消除锯齿的文字那些不喜欢反锯齿文本的人倾向于将其描述为模糊或模糊喜欢它的人倾向于认为反锯齿文本看起来更好看:它更流畅,更准确地表达了风格和感觉 -je ne sais quoi- 字体。

确实存在对此事没有强烈感情的人,但对于那些感觉强烈的人来说,没有中间立场问题是营地是对的消除锯齿的文字模糊和模糊但它更顺畅也是如此消除锯齿是一种幻觉 - 分辨率高于实际可用的错觉不幸的是,幻觉并不适合每个人。

非消除锯齿的文字是笨拙但尖锐的消除锯齿的文本优雅但模糊你无法获胜,因为真正的胜利需要优雅而锐利的屏幕文字,而且需要比我们今天更高分辨率的显示。

与此同时,我们需要充分利用我们所拥有的相对较低分辨率的显示器“做最好”的旧方法是使用精心手工生成的像素字体这就是旧的Mac OS所做的“做到最好”的新方法是让操作系统提供快速,高质量,全系统的抗锯齿这就是Mac OS X的功能。

您可能不同意Apple的决定不可否认,我做到了但这不再值得争论那班火车离开了火车站Mac OS X上的大多数文本都将被消除锯齿值得希望的是Mac OS X的抗锯齿程序继续改进。

亲爱的读者,这正是Panther所发生的事情。

值得注意的是,大多数注意到屏幕文本呈现质量等问题的人往往会参与反抗锯齿阵营从Mac OS X 10.0开始,很多人都大声热情地宣称Mac OS X中的屏幕文字很漂亮这是正确的 - 按照抗锯齿的标准,Mac OS X上的文字总是很好看。

因此,由于Mac OS X的屏幕文本渲染已经非常好,因此Panther的改进相当微妙也就不足为奇了It’s quite probably that most Panther users haven’t even noticed.

例如,这里是12点Hoefler Text(Mac OS X免费提供的优秀文本面),在Jaguar和Panther的TextEdit中呈现,包括Medium(最适合LCD)和Standard(最适合CRT):

中(LCD)文本渲染,1倍放大

标准(CRT)文本渲染,1倍放大

我告诉过你,改进是微妙的然而,在6倍放大率下,Panther的改进是显而易见的:

中(LCD)文本渲染,6倍放大

标准(CRT)文本渲染,6倍放大

在Panther样品中,垂直模糊度要低得多特别要注意“H”,“T”和“1”的顶部 - 在Panther下,字体的顶部更加清晰Also note the “o” — under Jaguar, it almost looks like two small adjacent parentheses; under Panther the “o” is more clearly a complete circle.

你可能会想知道它是否重要,因为你可以在没有放大的情况下几乎感觉到差异好吧,考虑一双太小的鞋子了也许你不会在早上第一次穿上时看到差异,但是当你的脚受伤时,你会在一天结束时看到它。

Panther改进的抗锯齿功能是Apple的最佳选择最小的细节很重要完美是值得追求的。没关系,但是太疯狂了更好。

以前: SmartyPants 1.4.1
下一个: BBEdit 7.1