来自罗伯特·布林赫斯特的印刷风格元素:
例如,像 TVR Murti 和 TRV Murti 这样的名称会造成任何二项式字距调整表都无法解决的微观排版问题。具有多项式字距调整表的字体——能够根据上下文以不同的方式对给定的一对字母进行字距调整——已经存在了十年,我的某一天会成为常态。目前,它们是罕见的。
究竟什么是多项式字距调整表?它与二项式字距调整表或标准字距调整表有何不同?怎么样,或者它的实现使它成为多项式?
来自罗伯特·布林赫斯特的印刷风格元素:
例如,像 TVR Murti 和 TRV Murti 这样的名称会造成任何二项式字距调整表都无法解决的微观排版问题。具有多项式字距调整表的字体——能够根据上下文以不同的方式对给定的一对字母进行字距调整——已经存在了十年,我的某一天会成为常态。目前,它们是罕见的。
究竟什么是多项式字距调整表?它与二项式字距调整表或标准字距调整表有何不同?怎么样,或者它的实现使它成为多项式?
多项式仅表示由多项式组成,而二项式仅由两项组成。
在大多数情况下,字距调整是字符对之间的间距(二项式)。然而,基于更大的字符串(多项式)应用字距调整是可能且有用的。这称为上下文字距调整。(据我所知,多项式字距调整不是标准术语,它更常见且更广泛地称为上下文字距调整)
带有负边距的字符通常需要上下文字距调整。最常见的是中间有空格或标点符号。例如,三元组L apostrophe A
。这L apostrophe
对将有负字距调整,而这apostrophe A
对将有负字距调整——这可能会导致L
andA
发生冲突,并且撇号离 . 太近A
而离 . 太远L
。
OpenType 格式支持上下文字距调整,但桌面出版软件和各种文本处理引擎的支持有限。
我没有任何数据来支持这一点,但是——根据我的经验——上下文字距调整并不是很多字体设计师实施的。经过漫长而繁琐的字符对字距调整过程,没有多少设计师会过于担心上下文字距调整。尤其是在支持如此有限的情况下。
注意:这个答案的大部分来自之前的 Q&A 。
nomial的前缀是指在确定字距时要考虑的字形数量。因此,二项式字距调整表采用字距调整对,而多项式字距调整表考虑字距三元组、四元组等。
虽然二项式和多项式含义的希腊起源由两个/多个部分组成,这种词的选择在某种程度上是合理的,但我认为这是一个糟糕的选择,因为这些术语已经被数学采用并且与字体设计本身相关。通常,使用术语上下文字距调整而不是多项式字距调整。
为了说明差异,让我们考虑引用中的示例。我只使用字距调整对(顶部)渲染它们一次,然后根据我的需要调整间距(底部)。请记住,后者只是一个快速的说明性草图,并不完美:
如您所见,使用对字距调整,事情看起来并不好。例如, V和RV中有太多空间这可能会避免组合中的重叠,例如VV Triplet 字距调整会考虑哪个字母在点之后或之前,因此它可以在适当的情况下将点放置在更靠近V的位置。此外,它可以协调所有大写-点-大写组合中的间距。
Quadruplet kerning 可以做一些事情,比如协调R. M和V. M中的空间,方法是承认V倾斜到单词空间而R远离它。然而,在排版程序中实际实现这一点是不太可能的,因为它们通常不使用字体的空格字形,而是自己处理空格。