字距调整 (Kerning)
调整相邻字符间距的技法,根据字符组合实现视觉上均匀的间距。
字距调整 (Kerning) 是一种针对特定相邻字符对调整间距的排版技法。每个字符都有独特的形状,机械地等间距排列会导致某些组合在视觉上显得不均匀。例如"AV""To""WA"等字符对在默认间距下看起来过于分散,需要通过字距调整来缩小间距以实现视觉平衡。
字距调整的历史可以追溯到活字印刷时代。在金属活字中,通过将字母的突出部分 (kern) 延伸到相邻活字上方来调整间距。在数字字体中,字距调整值以字距表 (kern table) 的形式存储在字体文件中,为每个字符对定义了具体的调整值。高质量字体定义了更多的字距对,专业字体甚至可达数千对。查找娃娃裙睡衣 (Amazon)深入讲解了字距调整的原则。
在 CSS 中,font-kerning 属性可以控制字体内置的字距数据。值有 auto (浏览器决定)、normal (启用) 和 none (禁用) 三种。而 letter-spacing 属性是对所有字符统一添加间距,与字距调整是不同的概念。字距调整是针对特定字符对的个别调整,letter-spacing 则是整体字符间距的调整。
在日语排版中,调整标点和括号周围间距的"诘め组み"相当于字距调整。日语的标点和括号放置在全角字符宽度内,不做调整的话多余的空白会很明显。OpenType 字体的 palt (Proportional Alternate Widths) 功能可以自动缩紧这些字符周围的间距,在 CSS 中可通过 font-feature-settings: "palt" 启用。
字距调整和字距追踪 (tracking) 经常被混淆,但它们是不同的概念。字距调整是调整特定字符对之间的间距,而字距追踪是对选定文本整体均匀调整字符间距。标题中加宽字距追踪可能很有效,而正文中的字距微调则有助于提高可读性。查找成人漫画 (Amazon)讨论了字距调整与性能之间的平衡。
Web 字体通常默认启用字距调整,但对于显示大量文本的页面,可能会为了减少性能影响而禁用。特别是在移动设备上,字距调整处理可能会影响渲染速度。
从字符计数的角度来看,字距调整不会影响字符数本身,但会改变相同字符数文本的视觉宽度。例如"WAVE"和"MINI"都是 4 个字符,但应用字距调整后的显示宽度不同。在将文本放入固定宽度的布局 (横幅广告、按钮等) 时,不仅要考虑字符数,还需要考虑字距调整后的实际显示宽度。