[HarfBuzz] Better handling variation selectors

Khaled Hosny khaledhosny at eglug.org
Tue Apr 23 14:33:14 PDT 2013


On Mon, Apr 22, 2013 at 09:06:53PM -0400, Behdad Esfahbod wrote:
> On 13-04-22 08:20 PM, Khaled Hosny wrote:
> > On Sat, Apr 20, 2013 at 10:49:26AM +0100, Jonathan Kew wrote:
> >> On 19/4/13 22:13, Behdad Esfahbod wrote:
> >>
> >>>   - What should HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES do to variation
> >>> selectors?  Right now they do not become visible no matter what.  Is it
> >>> relevant whether the variation selector was actually used during glyph lookup
> >>> or not?
> >>
> >> Yes, I think it's relevant. A variation selector that was used
> >> during glyph lookup has (in a sense) become "visible", manifested as
> >> a particular choice of glyph. I don't think it should -also- appear
> >> as a separate glyph, even in a "show invisibles" mode. In effect,
> >> the <base, VS> pair has been ligated - it's just a "ligation" that's
> >> handled by the cmap instead of GSUB.
> > 
> > But this can be said about many other control characters, ZWJ or ZWNJ
> > for example, they have a visual effect.
> > 
> > IMO PRESERVE_DEFAULT_IGNORABLES should simply show any default ignorable
> > character that is being removed from the output not as a result of
> > OpenType glyph substitution. One use of such feature (the only use?) is
> > to make visible all characters that has mysterious effects on the output
> > so they can be easily checked/edited, and I can see variation selectors
> > benefiting from this just like any other default ignorable.
> 
> 
> Note that if the font has a lookup ligating with ZWJ / ZWNJ (or any other
> default-ignorable) those won't be display even with
> PRESERVE_DEFAULT_IGNORABLES either.

Which is fine since it can happen to any other usually visible glyph and
one can switch fonts to make them visible.

Regards,
Khaled



More information about the HarfBuzz mailing list