有时查找表(lookup table)非常大,最好将其分解成几个较小的表:对此就可以使用关键字 subtable。子表(Subtable)最常用于包含大量字距调整对子(kerning pair)的字距调整表。我们建议每16,000个字距调整对子就使用一个子表。
声明一个子表只能在一个普通的查询表中进行:
lookup MyKerningLookup {
subtable [name] {
<lookup declarations>
}
}
当声明多个子表时,第一个子表不需要遵守子表语法,但后续的子表都需要遵守。这意味着:
lookup MyKerningLookup {
<lookup declarations>
subtable [name] {
<lookup declarations>
}
}
上面的语法是有效的,但是下面的语法
lookup MyKerningLookup {
subtable [name] {
<lookup declarations>
}
<lookup declarations>
}
是无效的。
子表名(name)是可选项,但为了清晰明确,我们建议还是定义子表名为好。
注意:第一个所声明的子表将定义查询的类型,所有后续子表都必须跟着是同一类型。