[HarfBuzz] Question about HarfBuzz-ng CTL Shaper Status

Ed ed.trager at gmail.com
Fri Sep 17 06:08:09 PDT 2010

Hi, Kenichi & Everyone,

> By the way, it seems that Tai Tham is encoded in logical
> order (unlike Thai).  Then, a shaping engine have to reorder
> glyphs before applying GSUB/GPOS features.  And as "otfview"
> doesn't reorder glyphs, you must enter a character sequence
> in the same order as what a shaping engine will do.

Yes, Tai Tham is encoded in logical order like Devanagari and other
Indic scripts.

The problem with that is of course that not a single rendering engine
exists which will deal with Tai Tham reordering (except perhaps

For certain combinations, such as Tai Tham's "Medial R" which needs to
precede the base consonant, using ccmp substitutions will work.  This
requires creating a lot of "ligature" glyphs.  But it works.

For all the vowels which also precede base consonants (U+1A6E through
U+1A72), I may have to use the same approach.  If I do it that way,
the font will become filled up with hundreds of "ligature" glyphs.
The file size will become large - not at all ideal for what I
originally intended to be a "web font".  But that may be the tradeoff,
because it is a solution that will work today.  Maybe.

Actually I need to do some additional research to figure out the
worst-case scenarios where there may be a sequence of multiple base
consonants strung together before one of those visually-preceding
vowels appear.  For the Lanna language of Northern Thailand, I think
the repetoire of possible consonant clusters is not too extensive.
But how extensive?  That is the question ...

More information about the HarfBuzz mailing list