OpenType features for geeks

kostas's picture

hi, everybody
i’m a fontlab beginner and i would like to know if there is any way to understand all that “chinese” code input for OpenType features. Spending a day to understand how to “ignore a substitute” (from FontLab manual) but nothing!!! Any help for the complete idiot?

Konstantinos Siskakis
Anagrafi
Greece

Mark Simonson's picture

The logic for "ignore" can be confusing. It's best to think of it as a filter that excludes things. Or as an "if not" statement.

Theunis de Jong's picture

Since FontLab uses the AFDKO, the Adobe site is a good resource (IIRC, the FontLab manual does mention a few deviations). Your ignore line can be found here:

Specifying exceptions to the Chain Sub rule

The most confusing part of it is it also needs a at least one part tagged with a ' (in regular substitutions this marks the to-be-replaced glyph(s)).

Christopher Slye's picture

Speaking of those 'ignore sub' statements: Within any lookup in a features file (which often means within a feature, unless you've specified lookups within a feature), scanning stops at the first match. So, in OpenType layout, if 'sub f i by f_i' matches, then that substitution is made, and everything in the lookup after that is ignored/skipped. The 'ignore sub' statements function exactly like any other 'sub' statement in this regard, except that instead of performing a substitution, nothing is done.

So, the statement 'ignore sub x f' i' by f_i' can be read as "if f and i is preceded by x, do nothing." This is a match, like everything else, and subsequent lines in the lookup are skipped.

Don't know if that actually helps! :)

Chris Dean's picture

While we're on the topic, anyone know how to get at OpenType features in Pages?

(Mac, iWork)

Mark Simonson's picture

Sure: Select the text, open the Fonts panel (command-T), and choose "Typography..." from the the pop-up menu at the bottom with the gear icon. If the text is set in an OT font, the features will show up there.

Syndicate content Syndicate content