Localize your font: Romanian and Moldovan comma accent
For Romanian and latin Moldovan, your font needs comma accent letters, in particular S/s and T/t. With this tutorial it is simple to get them right and to implement them.
罗马尼亚语的带逗号变音符的 S 和 T 很容易做。
首先,新建名为 commaaccentcomb
的字符形:将你的逗号拷贝进去,移动到基线之下,可能再稍微调节一下尺寸。通常,正常的逗号(标点)可能看上去太大了,主要是太高。对于其粗细,请根据字干粗度确定。无论如何,逗号变音符必须足够能看到,因此不要将其缩小太多。它可以伸出下降部线一点,尤其是在下降部较短的粗体中。
至于位置,逗号变音符需要出现在 T 字干和 S 弧线下方的正中央。别忘了设定锚点(Cmd-U)或重设锚点(Cmd-Opt-U),然后你会得到如下所示:

注意我们是如何将锚点放在形状上端水平线段中点正上方的(本截屏中,由蓝色参考线标注)。如果在逗号变音符和 T 的中间都放置了 bottom
和 _bottom
锚点,然后它们就能完美对齐。有时 S 需要依视觉放置 bottom
锚点,这样底端变音符最终会出现在视觉中心。
现在你可以创建带逗号变音符的字母了。敲 Cmd-Shift-G 并键入:
Scommaaccent
scommaaccent
Tcommaaccent
tcommaaccent
这样就完成了。就这么简单,真的。你通常不需要为大写字母创建单独的 .case
版本。
尾形符和逗号变音符
等会儿,还不算完成。还有一件事。你可能听说过 Unicode。在上古时代,罗马尼亚语中带逗号变音符的字符被编码在 U+015E
(S)、U+015F
(s)、U+0162
(T)和 U+0163
(t)。到目前为止还不错。不幸的是,某个人将这些字符命名为 WITH CEDILLA
(带尾形符)而非 WITH COMMA ACCENT
(带逗号变音符):
U+015E LATIN CAPITAL LETTER S WITH CEDILLA
U+015F LATIN SMALL LETTER S WITH CEDILLA
U+0162 LATIN CAPITAL LETTER T WITH CEDILLA
U+0163 LATIN SMALL LETTER T WITH CEDILLA
这就有问题了,因为有其他的语言中存在带尾形符的 S/s,比如土耳其语,这些语言使用同样的码位 U+015E
和 U+015F
。那么,我们应该怎样绘制 S/s 呢?带上尾形符还是逗号变音符?
不必绝望,有一个办法。为了应对这个问题,Unicode 为带逗号变音符的字母引入了替代码位:
U+0218 LATIN CAPITAL LETTER S WITH COMMA BELOW
U+0219 LATIN SMALL LETTER S WITH COMMA BELOW
U+021A LATIN CAPITAL LETTER T WITH COMMA BELOW
U+021B LATIN SMALL LETTER T WITH COMMA BELOW
所幸,现代罗马尼亚语文本确实使用这些新码位。Glyphs 也会将你的 commaaccentcomb
字母们放在这里。
locl 特性
不过有时,你会遇到使用旧编码的文本。这种情况下,Glyphs 会自动在 locl
特性中创建相应内容,在语言设定为罗马尼亚语的时候将 scedilla
转换为 scommaaccent
,诸如此类。
要实现这个,只需创建你的字母,前往 “文件 > 字体信息 > 特性”,并单击 “更新” 按钮。Glyphs 应该会创建一个 locl
特性,其中包含如下内容:
language MOL;
sub Scedilla by Scommaaccent;
sub scedilla by scommaaccent;
sub Tcedilla by Tcommaaccent;
sub tcedilla by tcommaaccent;
language ROM;
sub Scedilla by Scommaaccent;
sub scedilla by scommaaccent;
sub Tcedilla by Tcommaaccent;
sub tcedilla by tcommaaccent;
如你所见,Glyphs 不仅创建了罗马尼亚语特性代码(ROM
),还创建了摩尔多瓦语代码(MOL
)。摩尔多瓦语是摩尔多瓦共和国所讲的罗马尼亚语变种,因此以上所有内容也适用于摩尔多瓦语。
Glyphs 不仅会自动在 locl
特性中生成 MOL
和 ROM
代码,也会在 “前缀” 中添加相应的语言系统条目。所以,只要坐好放松,按下 “更新” 按钮,让 Glyphs 为你进行它的魔法。
带尾形符的 T 和 t
在这些之后,还有一个附带损失。据我所知,在地球上没有什么地方的书面语言使用带有尾形符的 T 和 t。那么我们应该如何处理 U+0162
和 U+0163
?
基本上有两种处理方法:
1. 有时会不一致但尽管这时也依然至少有 50% 是正确的办法:一种学派认为,因为这些码位只会被用于带逗号变音符的罗马尼亚语 T/t,我们也可以将 Tcedilla
画得像 Tcommaaccent
一样,将 tcedilla
画得像 tcommaaccent
一样。为此,只需进入 Tcedilla
(以及小写 tcedilla
),全选(敲两次 Cmd-A)并删除。然后,在该字符形中将 Tcommaaccent
(或相应的 tcommaaccent
)作为部件放入。你可以选择 “图层” 菜单下的 “添加部件”(Cmd-Shift-C)随后选择 Tcommaaccent
或 tcommaaccent
来完成。

2. 一致性更佳但有时是 100% 错误的办法:有人会说这不好,因为可能会导致不一致——在罗马尼亚语文本中,带有尾形符的 s(错误的)会与带有逗号变音符的 t(正确的)一起出现。这些人认为较差的设计还是要优于不一致的设计,因此建议使用尾形符绘制 T 和 t 并将其放在 Tcedilla
(U + 0162
)和 tcedilla
(U + 0163
)中,即使这些字母并不真正存在。如果启激活了 locl
特性,那么无论如何都将正确替换它。因此,在最坏的情况下,会出现设计不佳的字母,但绝不会出现任何不一致之处。Glyphs 在默认情况下会像这样创建 Tcedilla
和 tcedilla
。

选择哪种方式随你决定。在罗马尼亚设计师中,两个阵营里都有倡导者。上次我问他们时,似乎有更多的人喜欢不一致的方法(上述第一个),但是我并没有就此问题对有代表性的人数进行过适当的研究。
大写和小写
最后一点建议。通常情况下,你可以只绘制一个逗号重音符用于小写和大写两种情况。但是如果这款字体对于所有其他变音符都做了大小写区分,那么你也可以考虑使用 commaaccentcomb.case
变体。其中的大写逗号变音符可能会更长一些,更匹配大写字母的较粗的字干。如果你已经有了一个单独的大写字母尾形符,那么就还需要一个大写的逗号变音符。一旦有了大写的逗号变音符,只需使用 “字符 > 创建组合字符形”(Cmd-Opt-Shift-C)重新生成带有逗号变音符的大写字母即可。
示例自体:BEGA 由 SABINA CHIPARĂ 和 DIANA OVEZEA 设计。
2014-09-02 更新:更新为 Glyphs 2 中新的字符形名称。
2016-02-19 更新:更新为 Glyphs 2 的截图。
2018-05-02 更新:一些改写,文字润色,更新了截图。(感谢 Sabina Chipară!)
Chinese translation by Willie Liu (刘育黎) from 3type (三言).