字间距设计

教程
作者:Rainer Erich Scheichelbauer
en fr zh

31 七月 2015 发布日期: 4 三月 2013

Determining the sidebearings, i.e. the vital spaces to the right and left sides of your glyphs, is called spacing. Spacing is very important to the overall quality of your design. Here are our best tips to do it successfully in Glyphs.

起步

在做拉丁字母间距设计的时候,比较好的方法是从 no 起步。一旦这两个字母的边距设置合理,剩下的就相对简单了。所以,我建议你键入一些类似 noononno 的组合,然后开始摆弄它们的边距设置,直到你满意为止。你可以在灰色的信息面板(显示 > 显示信息,Cmd-Shift-I)中检查任意字符形的边距和字宽设置:

你也可以从字体视图左下角的“字符形信息”区域查看同样的数值。或者,在列表视图中查看“左边距”和“右边距”两栏。你可能需要首先在表头右键菜单中打开这两栏内容。拖动列标题,即可重排各分栏。

不论你喜欢何种方式,要想修改边距,只需点击数字并键入新值即可。顺便一提,左下角的信息区域甚至能够同时编辑多个选中的字符形。

除非在做很疯狂的设计,否则 o 的左右边距是应该相等的。一种不错的开局方式是,将边距设置为字怀宽度的三分之一。用于小字号就稍微调大一些,用于大字号则稍微调小,不论字体的目的为何。如果字碗相对平坦就稍微调大一些(平坦的字碗在两侧留下的白空间更少,因此需要进行补偿),圆形的字碗则稍微调小。提示:宽松间距比紧凑间距更容易。

Glyphs 采用一系列直观的快捷键来调节当前字符形的边距。所以,将光标放在 o 之前,按住 Ctrl 来调节左边距、Cmd 调节右边距,加上左右方向键来减小或增大相应的边距数值。如果你再同时按住 Shift,则以 10 为增量进行调节。

快捷键冲突

请当心:默认状态下,“Ctrl-方向键”被 OS X 用作“切换显示空间”的快捷键。因此,你需要将切换空间的快捷键换成别的,以便在 Glyphs 中使用。在 Mountain Lion 和更新版本中,前往“系统偏好设置”,选择“键盘”,单击“快捷键”选项卡,在右侧列表中选择“调度中心”并双击“想做移动一个空间”和“向右移动一个空间”来输入新的快捷键。个人而言,我喜欢将它们设为“Ctrl-Opt-Cmd-方向键”,但当然你可以自己选择任何你喜欢的快捷键,只要确保它不会影响到你需要的其他快捷键:

然后,来处理 n。因为 n 的角落通常白色空间更少,我们需要扩大边距来加以补偿。开局可以设为 o 边距的 1.5 倍,不算衬线。衬线会伸入白色空间中,从而显著减小左右边距的数值。

另外,n 左右不对称。右上角为字肩,使得右侧的白色空间比左侧要大,因此我们也需要加以补偿。现在有一个小技巧:如果你将 Ctrl 和 Cmd 键一起按住,就可以同时调节左右边距了,效果是在不变的字宽中移动字母:

这样一来,你就可以让 n 每次稍稍向右移动一点,直到 n 看上去位于两个 o 的正中间了。最终,当你的 noononno 中所有字母的间距看上去都一样大时,你就完成 no 的字间距设计了。

占位符

现在,我们来继续做其他字母。我比较喜欢的做法是,另起一行来键入之后想做的字母,比如 h。但你同时还想看到这个字母在 o 之间的效果,就像之前的 n 一样。在 Glyphs 中,你可以这样做:只要遍历字符串,将其中所有的 n 都替换成一个占位符。你可以通过“编辑 > 添加占位符”命令(Cmd-Opt-Shift-P)来“输入”占位符。

占位符会永远显示当前字符形,即光标之后的那个字符形。请当心,若你的光标位于你输入的测试文本的最末尾,占位符会表现得比较奇怪。这种情况下,只需将光标移动到某个字母之前即可。

边距的算术

不过请稍等,如果我们已经完成了 n,那么 h 就应该很简单。大部分情况下,它的边距可以和 n 相同,因为,除了上升部之外,hn 看上去基本一样。所以,我们可以查看一下n,并将其边距复制进 h 的灰色信息区域(Cmd-Shift-I)中。但这不是最佳选项,因为假如我们之后要修改 n 的边距该怎么办?我们真的要全手动地更新这些边距值吗?别吧。

我们这样做:不要输入代表边距长度的数字,而是输入另一个字符形的名称!Glyphs 就会将其他字母的边距值复用在当前字母上。这也适用于字宽:同时设置右边距和字宽,会自动重新计算左边距;设置左边距和字宽,则会产生重新计算过的右边距。所以,我们在 h 的左右边距中都输入 n,然后 h 就会动态地应用 n 的左右边距。

不过也不算 100% 动态。每过一段时间,最好通过“字符 > 更新量度”(Ctrl-Cmd-M)强制更新一下所选字符形的边距。你还可以通过按下 Crtl-Opt-Cmd-M 同时更新所有母版的量度值。

还不止这些。你甚至可以做一些简单的算术。这样的话,你需要在左边距、右边距或字宽处以等号(=)开头,后面加上算式。所以,如果你将某个字符形的左边距设为 =a+20,Glyphs 会采用 a 的左边距数值,再加上 20 单位。如果你使用 =|a+20,即在字符形名称前加上了竖线(|)那么 Glyphs 会采用 a 的对侧边距作为运算的基数。不但可以加上,你还可以减去:=b-10。或乘以:=c*1.1。或除以:=d/2。以我们的经验,简单地加上或减去定值,在大多数情况下是最好的。

如果你不想让 light 的 n 和 bold 的 n 边距或字宽相同,再加上一个等号即可,比如 ==n+15,就只会影响一个母版。

再次提醒,不要忘记时常执行“字符 > 更新量度”命令(Ctrl-Cmd-M),或按下 Ctrl-Opt-Cmd-M 作用于所有图层。那么看一下字母造型的相似之处,试着为字母建立联系,并把它变成像这样的边距值算术:

  • 左边距 =o: c, d, e, g, q
  • 右边距 =o: b, p
  • 左边距 =n: b, h, i, k, l, m, p, r
  • 右边距 =n: a, h, m

等等等。你的用法可能大有不同,因为归根结底,它取决于你如何设计字符形。

大写字母间距

对于大写字母而言,基础字符通常是 HO。基本上和上面的小写字母是一样的:做好了这两个字母,你就准备好继续了。不过这次,你还需要让它们和小写字母适配。如果你注意了这一点,就可以很容易地将边距值应用到其他字母上:

  • 左边距 =H: B, D, E, F, I, K, L, M, N, P, R
  • 右边距 =H: I, M, N
  • 左边距 =O: C, G, Q
  • 右边距 =O: D, Q

等等等。

自动对齐

基于部件的字母会继承其基础部件的字距设置。比如,你要在字体里出现一个“ä”。所以你使用一个 a 部件和一个 dieresiscomb 部件构建了一个 adieresis。实际上,如果字体中已经存在 adieresiscomb,当你创建 adieresis 时 Glyphs 会自动完成边距继承。现在,进入 adieresis 字符形,点击两个部件之一。它会处于锁定状态,或者我们讲,被自动对齐。大多数情况下,这就会是你想要的效果。相信我,没有什么比手动同步所有变音字母字距更乏味了。

不过,有时,这不是你想要的效果。比如,当你做加泰罗尼亚文带点的小写 l 时,你就有可能不想让部件自动对齐。这种情况下,请在想要改变位置的部件(们)上打开上下文菜单,并选择“停用自动对齐”。如果你之后改变主意了,你可以在同样的菜单中“启用自动对齐”。

非字母字符形比如标点、数字或符号,首先不会自动对齐。这样,你可以快速简便地一步制作比例数字和等宽数字。

还有一件事告诉极客们:如果你想要在一个部件构成的字符形中使用自动对齐,但希望右边距可调,那么这儿有一个“双下划线技巧”。我们以前文所述的带点 l ldot 为例。不要只是添加一个名为 periodcentered 的点,这会让 ldot 的宽度和 l 一样。你要添加一个名字前面带两个下划线的字符形,比如 __periodcentered。这样,双下划线字符形的宽度会累加在复合字符形的右边距上。所以,你只需要在 ldot 中添加双下划线部件然后调节其字距,直到 ldot 看上去不错。好啦!注意截图中带点 l 增加的宽度:

批量处理量度值

想要同时修改多个字符形的量度?如果你前往“滤镜 > 变换 > 量度”,你也可以设置所选字符形的左右边距值。如果勾选“相对”复选框,它会在之前的数值之上增加。输入负值来减小数值。

先不要调节字偶距

尽量在不调节字偶距的情况下做到尽量完善。到了某个时间点,你会发现自己无法再通过调节边距来优化字距了。这时,你就可以开始字偶距调节了。但在此之前不要,真的。这是因为,一旦你发现字间距还可以优化,你就需要全盘重新开始自偶距调节。


2015-07-30 更新:添加“批量处理量度值”并更新为 Glyphs 2。

Chinese translation by Willie Liu (刘育黎) from 3type (三言).