I can also confirm that the dev2 and deva tables of Free Sans have the exact same features. That's plain broken stuff we have to deal with :(.
On 13-03-05 07:58 PM, Behdad Esfahbod wrote: > With Free Sans, and a sequence like <U+0924,U+094D,U+0930> (TA,Virama,RA), > HarfBuzz is failing to for the correct conjunct while Uniscribe doesn't. > > The problem is: Free Sans has both deva and dev2 tables. HarfBuzz correctly > chooses dev2. Now, we then proceed to find the base. For that, we check > whether "Virama,RA" matches the blwf feature. It doesn't. As such we take RA > to be the syllable base, and things go down from there. > > Uniscribe somehow figures it out. Assuming that Uniscribe is also using the > dev2 table, I guessed that Free Sans has wrong blwf tables (simply copied over > from the deva table) and as such matches 'RA,Virama' instead of 'Virama,RA'. > Indeed, looking for that makes HarfBuzz correctly shape the sequence. > > So, I'm going to change the Indic shaper to look for both sequences, Virama > first and Virama last, when categorizing consonants. It's a bummer that we > should take such performance hit because of some broken fonts, but that > shouldn't be a big deal. > > I can't think of any situation that this would have unwanted consequences. > > Will implement, test, and push. > > behdad > -- behdad http://behdad.org/ _______________________________________________ HarfBuzz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/harfbuzz
