跳转到主要内容

字宽、间距和排版功能

适合谁看:字形画好了,接下来要处理字宽、字距和 OpenType 功能的人。

汉字:全角等宽

汉字一般都是等宽的,字宽就是 1 个 em。间距主要通过字面大小来控制,见《汉字的骨架:字身框、字面、重心和中宫》。

西文:字侧空间和字偶距

西文字母宽度各不相同,需要逐个设定:

  • 字侧空间:每个字形左右两侧的空白。常见方法是先给直线类字母(如 n、H)定好间距,再推到圆形类(o、O)和斜线类(v、A)[1][2];
  • 字偶距调整:对特定组合(如 AV、To、LT)单独调整距离,存进字体的 kern 功能。先把字侧空间调好,字偶距只用来处理少数特殊组合。字偶距只用来处理少数特殊组合[3]。

常用的 OpenType 功能

OpenType 功能让字体在排版时自动替换字形或调整位置。功能让字体在排版时自动替换字形或调整位置[4]。中文字体常用的:

功能 作用
vert / vrt2 竖排时替换标点等字形
halt / vhal 把全角标点变成半宽(横排/竖排)
chws / vchw 根据上下文自动挤压标点
locl 按语言切换字形,例如简繁或地区字形
palt / vpal 比例宽度的字形调整
kern 西文字偶距
liga 西文连字
tnum / pnum 等宽数字 / 比例数字

功能做好后,要在真实排版环境里测试:网页浏览器、Word、InDesign 对各功能的支持程度不同。网页上如何开启这些功能,见《在网页上实现中文排版:CSS 速查》。

度量信息

字体文件里还要设定行高相关的数值(上升、下降、行间距等)。这些数值不一致,会导致同一款字在不同系统里行高不同。可变字体和多字重家族中,各字重的这些数值要保持一致。各字重的这些数值要保持一致[5]。

参考资料

参考资料(5)
    1. Glyphs 教程:Spacing(英文):https://glyphsapp.com/learn/spacing,Glyphs
    2. GlyphsKnowledge:Spacing,Google Fonts
    教程:Kerning(英文):https://glyphsapp.com/learn/kerning,Glyphs GoogleOpenType Fonts Knowledge:Spacing:https://fonts.google.com/knowledge/glossary/spacing功能标签列表(英文),Microsoft Microsoft OpenType 功能标签列表:https://learn.microsoft.com/en-us/typography/opentype/spec/featurelist Microsoft OpenType 规范:OS/2 表(垂直度量):https://learn.microsoft.com/en-us/typography/opentype/spec/os2英文),Microsoft