Basically what's happening is this: - Lookup 0 joins gid9 to gid6 saying that gid9 should stay on the baseline,
then: - Lookup 1 joins gid6 to git8 saying that gid8 should stay on the baseline. Essentially gid6 is attached to two different sides... I call this a faulty font, but I'll work something out to match Uniscribe to the extent possible. I suppose the later connection shall win, ie. gid8 stays on baseline and everything else adjusted to follow. b On 15-08-23 04:58 PM, Khaled Hosny wrote: > I’ve a problem with mixing cursive attachment lookups with RTL flag set > on some of them and not the others. > > I’m attaching two minimal fonts showing this issue, the only different > between the good and bad fonts is that the bad font has a cursive > attachment lookup with RTL flag not set while all the others have it > set, and HarfBuzz seems to not to apply that lookup on the same word > where the other lookups are applied. > > Testing with the word كمثل, the anchor between the 2nd and 3rd glyphs > (from right) is not applied in the bad font but applied in the good one. > Both DirectWrite/Uniscribe and Core Text apply it fine in both fonts > (though Core Text has other serious problems). > > If I unset the RTL bit on all the cursive attachment lookups, it renders > correctly in HarfBuzz. > > (If you are wondering why I’m doing this, it is because for some of my > cursive attachments I want rightmost glyph to stay in its natural > position and the other glyphs attached to it instead of having the > leftmost glyph stay in its natural position.) > > Regards, > Khaled > > > > _______________________________________________ > HarfBuzz mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/harfbuzz > _______________________________________________ HarfBuzz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/harfbuzz
