Welcome to Typophile
Please Sign in.

OT How-To

Indices : “How To” Section : Programming OpenType Features

OpenType is a powerful new font format that gives users a much broader range of typographic and linguistic control than has previously been available with a single digital font. More and more type Foundries offer OpenType (OT) fonts these days and one can expect the average user to become more aware of the benefits of OT fonts as more applications take advantage of their capabilites in the future.

Getting Started
Once you’ve decided you want to develop OT fonts, you must decide what software you want to use to accomplish this task. Your choices include:

  • FontLab’s OpenType Tools OpenType programming tools built into the popular font creation software FontLab.
  • Microsoft’s Visual OpenType Layout Tool (VOLT) A free tool available to add OpenType layout tables to TrueType fonts.
  • Adobe Font Development Kit for OpenType (AFDKO) A set of opensourse tools available to add OpenType layout tables to PostScript fonts.

Each of these methods has its own set of advantages and drawbacks, for example: FontLab makes it easy to preview OT features, but it does not yet support complicated lookups such as one-to-many replacements. Adobe’s FDK and Microsoft’s VOLT may give access to more advanced features but do so at the expense of ease of use. Additionally these programs can only export one Flavor of OT font (PostScript and TrueType respectively). The next few sections will be dedicated to the basics of using each of these methods.

Some pointers for learning the “OpenType language”

General Practices
The following advice is applicable no matter which method you choose to add OT features to your font. When planning which features to incorporate into your OpenType font, it’s good to keep in mind what features are currently supported, because although dozens of features have been defined in the OpenType layout tag registry, only a handful are currently supported by currently available applications. For example, although the “rand” feature has been defined to randomize characters from a set of alternate glyphs, there are currently no programs that offer support for this feature. Including an unsupported feature may give the font extended functionality in the future, but at the present time font users would have no way to access such a feature. For an up-to-date listing of which features are supported by what software, see Typotheque’s OpenType Feature Support in Applications page.

FontLab incorporates Adobe’s feature definition code for OpenType programing within its font editor. FontLab’s user’s manual gives a crash course on how to write lookups using this syntax. For a more detailed overview, see Adobe’s OpenType Feature File Specification. Once you’ve read through this, it’s a good idea to look at some feature files by some professional foundries. Adobe has made a couple of OT feature files available so that OpenType developers can see how to build complete sets of OT features. Currently, Adobe has released the feature files for Minion Pro and for Bickham Script Pro. FontLab also offers a Free Font Pro with an extended character set and opentype layout tags that developers can open up and experiment with to get a feel for how different features work. Most OT features for the English language are made up of simple subtitutions (GSUB lookups). These types of lookups are simple to write. Using only simple substitution rules, one can sucessfully build simple features for ligatures, Text Figures (oldstyle figures), stylistic alternates, &c.

OpenType smallcaps in a separate font?
Proper Implementation of numr and dnom OpenType features
Stylistic Alternatives - InDesign?
OpenType feature access to unusual characters
OpenType Resources (Link Collection)
OpenType programming

Additional Articles:
Adobe - OpenType Feature File Specification
Recommendations for OpenType Fonts