[HarfBuzz] USE and zeroing marks

Martin Hosken mhosken at gmail.com
Wed Nov 11 19:19:25 PST 2015


Dear Behdad,

I see from the code that the USE shaper doesn't zero marks. But that the USE spec implies that they are:

the width of the base character must be added back using the <dist> feature. This is necessary because OT processing cancels the width associated with a mark. It is necessary to cancel the width of a non-spacing mark because it is not clear where to apply the width of a non-spacing mark during OpenType processing.

I'm hoping that the spacing marks proposal will answer that final question. But it does imply that marks need to have their advances zeroed.

I don't quite follow how not zeroing marks works. If I attach acute with advance of 100 to an a with advance 200, I assume I end up with a total advance of 300? I think the spacing mark proposal helps sort out the overlap problem which is really tricky to resolve otherwise even for those shapers that don't zero their marks.

Yours,
Martin


More information about the HarfBuzz mailing list