[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