书本上的 fi 究竟是什么?

书本上的 fi 究竟是什么?

排印之美 Ep. 01 The Beauty of Typography Ep. 01

视频文案

Note

The English version video transcript is available at here.

不知道你是否注意过,在一些书籍、杂志、报纸,乃至屏幕上,总能找到这样连起来的字符?所以,这究竟是什么?是某种印刷或者显示错误吗?它们又是怎么被创造出来的?用途又是什么?大家好,我是 Steven。本系列将会向你介绍一些字体设计以及排印的知识。OK,步入正题。

这类连起来的字符其实在排印里面称作「连字」,并非印刷或显示错误。Ligature 源于拉丁语 ligātus,意为「连接,结合」。当两个或多个字母组合在一起形成一个单一的字形时,就会出现连字。

回溯至铅字还是主要印刷方式的时代。观察这个铅字,为了方便演示,我先将它镜像翻转一下。字母坐在我们称之为「字身框」的矩形方框中。方框的宽度包含了字形的宽度以及两侧的侧边距。在理想情况下,这些侧边距有助于保持字母之间的间距,使它们看起来恰到好处。

铅字的字身框、字符宽度和侧边距
铅字的字身框、字符宽度和侧边距

但有时候,某些字母例如 f,或者 T, A, V,因为字形的原因,会导致视觉上这些巨大空白的出现,降低可读性。把字面的一部分伸出字身框是个解决办法。这些伸出去的部分就叫 kern。但这也会导致伸出的部分会和其他字母发生碰撞,根本无法和其他字母并列放置。同时也不利于收纳,铅字使用的时间一长也会导致字面发生更大程度的磨损。

为了解决这个问题,设计师们将常用的字母组合设计成单独的活字。连字也就应运而生。由于这种设计不仅使得版面整齐美观,而且也使拣字和排版更加便利,因此在那个时代很快就蔚然成风,直到今天。

在如今的语义下,连字的功能可以分为两大类:除了消除字符相连时可能会出现的难看的黑块,优化阅读体验的标准连字以外,还有一种就是更具有装饰性的设计,即自由连字。自由连字的使用并非必须,但由于它们大多都起源于活字印刷乃至手抄本的时代,因此酌情使用更能为设计作品添加一份古典的气息。在 OpenType 技术的加持下,除了标准连字以外,设计师还可以设计各式各样的连字功能,以满足更复杂的排版需求。连字除了将字「连」起来,也可以反其道而行之,将前后字符微调特意隔开,避免发生粘连。

EB Garamond 中的标准连字和自由连字
EB Garamond 中的标准连字和自由连字
请仔细观察图中高亮的部分。在 Cambria 中,fi 连字反其道而行之,并没有将字「连」起来,而是隔开
请仔细观察图中高亮的部分。在 Cambria 中,fi 连字反其道而行之,并没有将字「连」起来,而是隔开

在现代的一些编程字体中,也能看到越来越多的厂商开始以支持各种 OpenType 特性作为宣传点。最常见的就是对一些重复出现的符号改变字形,以便于区分相近的内容,或者使重复的符号更容易计数。也可以使一些符号组合更容易辨认,例如将 != 渲染成两倍宽的不等号 !=

Fira Code 中设计的各种连字
Fira Code 中设计的各种连字

上面提到的连字是出现于排版印刷中的,它们功能仅在字体设计和排印上才能体现,而不会对原文的意义产生影响,因此也被称为排印学连字。而还有另外一种连字,这种连字不单单是将两个字母连写起来,也不是简单地将其拆开成原始字母就能作为替换,而是由此诞生了一个新的字母,称为正字法连字

最有名的一个例子便是 W。根据它的读法就可见一斑,英语里叫 Double-U,法语中叫 Double-V。关于这个字母的起源,今天在这视频中就暂时不做过多阐述。如果你对本系列感兴趣的话,请点点赞,关注一下,在评论区留言让我知道你的想法。

此外还有德语中的 eszett。虽然依据读音是 Es+Zett 的形式,但却经常写作长 s (ſ) + 圆 s (s) 的正字法连字。寻其本源,这个字母最开始起源于中世纪晚期和现代早期德语的二合字母 ⟨Sz⟩,在 Blackletter 中就写成了 ſ + 带尾 z(ʒ) 的形式。既然如此,为什么它现在又会写成 ſ + s 的形式呢?

Eszett 在各种 Blackletter 字体中的字形
Eszett 在各种 Blackletter 字体中的字形

在公元 3 至 8 世纪的时候,德语的语音发生了比较重要的变化,即高地德语辅音推移。在这期间,发生了推移的西日耳曼语逐渐形成了旧高地德语,区别于其他未发生推移的变体。原本西日耳曼语中的清塞音 /p/, /t/ 和 /k/ 演变成了擦音或塞擦音 /t͡s/, /p͡f/ 和 /x/。然而,由于当时的德语主要使用的还是拉丁字母,因此就出现了一字多音或一音多字的混乱局面。怎么使用这些字母全凭使用者的喜好。

在原来的字母表中,字母 ⟨z⟩ 既表 /t͡s/,又表 /s/。而到了 13 世纪,字母 ⟨s⟩ 逐渐浊化,开始发 /z/ 的音。为了区分,/s/ 就开始由 ⟨ss⟩ 或二合字母 ⟨sz⟩ 表记。在西文排印中,ſs 这个连字其实在就存在了,只是当时仅仅只是作为一个排印学连字存在。

而后来在 1903 年 7 月莱比锡字体排印学会发布的公告上,选用了一种名为 Sulz­bacher 式的字形作为 Eszett 的字形基础。自此,Eszett 就正式作为一个字母进入了德语。2017 年,德语正字法协会正式将 Eszett 的大写纳入了德语正字法。Eszett 在德语中的用法从此就尘埃落定。

1903 年 7 月第 27 期的《面向德国图书印刷商、平版印刷商及相关行业的杂志(机翻)》。在这一页下半部分的公告中规范了 ß 的字形
1903 年 7 月第 27 期的《面向德国图书印刷商、平版印刷商及相关行业的杂志(机翻)》。在这一页下半部分的公告中规范了 ß 的字形

而与之相对的,荷兰语中的二合字母 ⟨IJ⟩ 至今依然悬而未决。尽管荷兰语联盟和不少字典,都推荐这个字母现在应该直接使用 I + J 的形式,然而不少情况下它的表现都像是一个正字法连字。在首字母大写时,整个 ⟨ij⟩ 都会变成大写的形式;在荷兰语的纵横字谜中,它们也会被填入同一个格子;在一些打字机上,这个字母也分配到了单独的键位;阿姆斯特丹国家博物馆的标志将其设计成这种形式;在不少字体中,⟨ij⟩ 也被设计成了连字的形式。Unicode 码位U+0132U+0133也将其大写和小写的形式称为 ligature。这些无疑又在强调这个字母的整体性。

形成单独的字母并非连字唯一的演化方向。一些常用的字母组合也在历史的长河中慢慢进化成了符号的样式。与号(&)便是绝佳的证明。这个符号表示「与,和」的意思,而它就来源于拉丁语中的 et;而井号(#)最开始也是来自拉丁语 libra pondo 的缩写。除此之外,不少国家的货币符号,炼金术符号,天体符号等,都是字母连字的产物。

与号(&)的演化
与号(&)的演化
由艾萨克·牛顿书写的 libra pondo 的缩写
由艾萨克·牛顿书写的 libra pondo 的缩写

连字也并非仅局限于拉丁字:希腊字母的手抄本中就包含了大量的连字,受其影响,早期的希腊语出版物中也保留了这种风格。如今,你还可以在 Unicode 中找到 ⟨ϗ⟩ 和 ⟨ϛ⟩ 的码位;在西里尔字母中,也存在着不少正字法连字,而且大多都被收录进了 Unicode;而在阿拉伯语中更是不可或缺,在屏幕上正确渲染文本需要涉及到大量的 OpenType 特性。在亚洲地区,曾经直排的日文也拥有不少连字或合字,如今被收录的只有平假名「ゟ」U+309F和片假名「ヿ」U+30FF,等等。

希腊语字典的手抄本,可以看到其中包含了大量的连字
希腊语字典的手抄本,可以看到其中包含了大量的连字
西里尔字母中也有大量的正字法连字
西里尔字母中也有大量的正字法连字

让我们回到最开始的问题。「这些连字有什么用处」。我想,这不仅仅是人们在美学上的尝试,除此之外,如同 DNA 的双螺旋结构,排印学和正字法的连字互相缠绕、纷飞、共舞,在历史的长河中留下了浓墨重彩的一笔,而我们也能以此得以窥见人类语言发展的历史。

不少排印学连字在 20 世纪兴起的照排以及桌面出版中逐渐没落,而 OpenType 的出现则再次让它们重焕生机。这些小小的符号,在字里行间、一呼一吸之间,承上启下人类的文明。

参考链接

书籍及手稿

文章及专栏

维基百科及维基词典

文档及论坛