Kern feature in FL VI
Options

Jeff Peters
Posts: 36
It seems FL VI writes much longer kern feature code than FL 5 did.
It seems to include both class based and flat kerning. Can anyone shed light on this?
It seems to include both class based and flat kerning. Can anyone shed light on this?
0
Comments
-
When you say "longer kern feature code," do you mean the plain-text representation as FEA code, or the compiled font?
The plain-text FEA code is not at all the same thing....0 -
I mean what is generated when pressing "build kern feature", which I guess equals to plain-text FEA..0
-
FontLab VI uses KLTF kerning optimization (licensed from Karsten Lücke). The text representation of the kerning, that you see as plain text is larger, but the compiled font should be smaller.
Class kerning that would cause kern table overflows if generated in a font from FontLab Studio 5, usually compiles and works when generated from VI, thanks to being significantly smaller in the final font.
Class kerning in a compiled font is essentially a two-dimensional array. The plain-text FEA code representation is essentially linear. If you double the number of classes on both left and right sides, you make the plain text representation twice as long, but the compiled version is four times as big.
Subtable breaks can make the compiled font smaller, however. Imagine a tic-tac-toe board with X's along a diagonal. Without subtable breaks, the font would need all nine squares worth of data. But breaking it into three subtables, for example only kerning Latin against Latin, Greek against Greek, and Cyrillic against Cyrillic, and then breaking the kerning into three separate subtables, makes for a smaller compiled font—the kerning data uses 1/3 the space.
KLTF optimization can make intelligent use of subtables as well as dropping things from class kerning into flat kerning, when doing so requires less data in the final font.
So, it is complicated, and there is not a one-to-one relationship between any plain-text representation of kerning that includes class kerning, and the actual font data in the output font.4 -
Got it, thanks for explaining!0
Categories
- All Categories
- 46 Introductions
- 3.8K Typeface Design
- 476 Type Design Critiques
- 555 Type Design Software
- 1.1K Type Design Technique & Theory
- 640 Type Business
- 831 Font Technology
- 29 Punchcutting
- 508 Typography
- 120 Type Education
- 313 Type History
- 75 Type Resources
- 109 Lettering and Calligraphy
- 30 Lettering Critiques
- 79 Lettering Technique & Theory
- 533 Announcements
- 86 Events
- 110 Job Postings
- 167 Type Releases
- 169 Miscellaneous News
- 274 About TypeDrawers
- 53 TypeDrawers Announcements
- 119 Suggestions and Bug Reports