[HarfBuzz] Exposing attachment tree / Arabic joining to shaping clients

Martin Hosken mhosken at gmail.com
Wed Nov 13 03:31:10 UTC 2019


Dear Behdad,

> For reason that many of you know (letter-spacing, Arabic elongation, other
> postprocessing) I like to expose attachment data to the shaping clients.
> There's two separate pieces so far:
> 
> - The Arabic joining info, which is applicable to all Arabic-like fonts
> even the ones that do NOT use cursive joining.
> 
> - Mark attachment and cursive attachment.  These form a tree with a
> attachment-type enum.
> 
> I'm not sure which slots in the pos buffer to expose this in.  The latter
> definitely belongs to the pos buffer, whereas the former is more a property
> of the text.  So I feel like we should expose them separately.
> 
> Ideas?

Pulling back into the more generic script question, I think both may be covered by giving the attachment parent and attachment type. Thus Arabic joining is via cursive attachment and diacritic attachment via mark attachment. IMHO, this would then also apply naturally to other scripts and give some help with regard to justification.

Yours,
Martin


More information about the HarfBuzz mailing list