[HarfBuzz] Ligatures

Richard Wordingham richard.wordingham at ntlworld.com
Sat May 23 19:06:32 UTC 2020


On Sat, 23 May 2020 21:26:00 +0300
Eli Zaretskii <eliz at gnu.org> wrote:

> > From: Khaled Hosny <dr.khaled.hosny at gmail.com>
> > Date: Sat, 23 May 2020 20:09:50 +0200
> > Cc: harfbuzz at lists.freedesktop.org
> > 
> > Overall, if you can’t send the whole text (words are the absolute
> > minimum, but this has its issues as well), don’t just send
> > arbitrary parts of it as the result will be some inconsistent
> > mess.  
> 
> I almost understand (and agree), sans one part: the "arbitrary parts"
> of what you wrote.  If we want to produce a ligature out of "ffi", the
> shaper will get "fii" and nothing more.  Which part here is arbitrary?

There are three different tools for producing what looks like an "ffi"
ligature:

1) Make a ligature
2) Contextual substitution
3) A mix of contextual substitution and kerning.

A font that uses the first will produce a ligature for Emacs.

A font that uses contextual substitution will not work - you will just
see the 3 unligated characters with their default glyphs.

A font that uses a mix of contextual substitution and kerning will
likewise fail.  However, if is possible that you might get the "ff"
ligature and a normal 'i', or a normal 'f' and an "fi" ligature.

From the point of view of someone who expects full shaping, what result
you get will be arbitrary, depending on how the font designer has
marshalled his tools.

Richard.


More information about the HarfBuzz mailing list