Typophile

Managing Additional Diacritics in an FL Typeface

Elliot Marx

I have noticed that in many installed fonts, there is a HUGE selection of diacritical alternates for all sorts of letters that don't appear to be covered by the usual codepages. I would like to support at least some of these in my own typeface, but it doesn't appear that I can easily create these glyphs the way I can with the diacritics recognized by the codepages, wherein you can simply double click the glyph and a copy of both the letter and the diacritic is created. This allows changes made to either the diacritic or the letter to be automatically updated, and it makes large groups of these alterates very easy to create, delete and recreate as necessary.

For these unrecognized diacritical glyphs, do I have to lose this functionality? I want to support a wide range of diacritics, but I might not have the time to create and manage them if they can't be handled as easily as the recognized ones.

Diacritic characters, i.e. letters with diacritic marks, can be entered in text using two ways: static and dynamic.

The static method is using precomposed forms, i.e. each character is represented by one glyph in the font. Most of these glyphs are made using components, so they are composite, or precomposed, glyphs. But for a repertoire of these precomposed glyphs, , codepages is an antique mechanism to look at. Please look at Unicode Ranges (also called Unicode blocks), this is a far more up-to-date mechanism to address the repertoire of encoded precomposed diacritics. For example, look at the Latin Extended B block -- you will find a number of characters that are not in any codepages but are present in the Unicode standard. In the Unicode Ranges mode of FontLab Studio, you can create those glyphs by double-clicking, usually.

Letters with diacritic marks that are not encoded in the Unicode standard in their precomposed form can be entered in text as a sequence of base letter followed by a combining diacritic mark. Their rendering can be performed using two dynamic methods: substitution or positioning.

The substitution method works in many applications that support OpenType. It typically employs the "ccmp" OpenType Layout feature, while sometimes it can also be duplicated in the "liga" feature for backwards compatibility. I have detailed the process of their creation in FontLab Studio on the FontLab forum.

The other dynamic method is positioning. This is done using the "mark" and "mkmk" OpenType Layout features. You need Microsoft VOLT to add those features. There is a VOLT tutorial on the SIL site.

Karsten Lücke's OpenType resources collection is also a good starting point.

Regards,
Adam Twardoch
Fontlab Ltd.

Adam, I think you missed the point of Elliot's question. He wants to know if there is a way to have automatically precomposed glyphs appear in FontLab when he double-clicks on an appropriately named glyph cell.

This used to be possible via the alias.dat file, yes? What is the mechanism now?

Captured from web.archive.org on 20 Apr 2015. view this capture