[HarfBuzz] harfbuzz: Branch 'master' - 5 commits
Behdad Esfahbod
behdad at behdad.org
Thu Apr 4 11:00:32 PDT 2013
On 13-03-24 08:28 AM, Khaled Hosny wrote:
> On Tue, Feb 12, 2013 at 06:49:01AM -0800, Behdad Esfahbod wrote:
>> commit 568000274c8edb5f41bc4f876ce21fcc8bdaeed8
>> Author: Behdad Esfahbod <behdad at behdad.org>
>> Date: Tue Feb 12 09:44:57 2013 -0500
>>
>> Adjust mark advance-width zeroing logic for Myanmar
>>
>> Before, we were zeroing advance width of attached marks for
>> non-Indic scripts, and not doing it for Indic.
>>
>> We have now three different behaviors, which seem to better
>> reflect what Uniscribe is doing:
>>
>> - For Indic, no explicit zeroing happens whatsoever, which
>> is the same as before,
>>
>> - For Myanmar, zero advance width of glyphs marked as marks
>> *in GDEF*, and do that *before* applying GPOS. This seems
>> to be what the new Win8 Myanmar shaper does,
>>
>> - For everything else, zero advance width of glyphs that are
>> from General_Category=Mn Unicode characters, and do so
>> before applying GPOS. This seems to be what Uniscribe does
>> for Latin at least.
>>
>> With these changes, positioning of all tests matches for Myanmar,
>> except for the glitch in Uniscribe not applying 'mark'. See preivous
>> commit.
>
> This commit is causing a regression with Amiri, the string “هَٰذ” with
> Uniscribe and HarfBuzz before this commit, gives:
>
> [uni0630.fina=3+965|uni0670.medi=0+600|uni064E=0 at -256,0+0|uni0647.init=0+926]
>
> But now it gives:
>
> [uni0630.fina=3+965|uni0670.medi=0+0|uni064E=0 at -256,0+0|uni0647.init=0+926]
>
> i.e. uni0670.medi is zeroed though it has a base glyph GDEF class.
Ugh. I'm looking into this. Will hopefully get it resolved today.
> Regards,
> Khaled
>
--
behdad
http://behdad.org/
More information about the HarfBuzz
mailing list