[HarfBuzz] Multiple substitution and mark positioning
Behdad Esfahbod
behdad at behdad.org
Tue Jun 12 07:23:57 PDT 2012
Ok, I'll test tonight.
On 06/12/2012 10:17 AM, Khaled Hosny wrote:
> Sorry, I see I din’t mention font used, it is the same version of Amiri
> I sent to you earlier.
>
> Regards,
> Khaled
>
> On Tue, Jun 12, 2012 at 09:48:11AM -0400, Behdad Esfahbod wrote:
>> Ah, this can get really ugly. Can you please send me a test font?
>>
>> behdad
>>
>> On 06/12/2012 06:31 AM, Khaled Hosny wrote:
>>> I’m not sure if this is related, but I now get no mkmk positioning when
>>> the marks are “inserted” using multiple substitution. For example, “للّٰه”
>>> is positioned correctly, while “لله” is not though it is the same mark
>>> glyphs except they are being added by multiple substation.
>>>
>>> [uni0647.fina_Lellah=4+721|uni0670=1 at -267,-162|uni0651=1 at -277,-440|uni0644.medi_Lellah=1+473|uni0644.init_Lellah=0+319]
>>>
>>> vs.:
>>>
>>> [uni0647.fina_Lellah=2+721|uni0670=1 at -245,-440|uni0651=1 at -277,-440|uni0644.medi_Lellah=1+473|uni0644.init_Lellah=0+319]
>>>
>>> Regards,
>>> Khaled
>>>
>>> On Fri, Jun 08, 2012 at 10:14:19PM -0400, Behdad Esfahbod wrote:
>>>> Hi Khaled and others,
>>>>
>>>> I fixed this, among other things, including a major mlig and mkmk regression.
>>>> Please test.
>>>>
>>>> behdad
>>>>
>>>> On 05/12/2012 08:54 AM, Khaled Hosny wrote:
>>>>> Hi all,
>>>>>
>>>>> There seems to be a difference between HarfBuzz and Uniscribe on how to
>>>>> handle mark positioning when there is multiple glyph substitution,
>>>>> namely HB seems to apply the mark to the last component while USP
>>>>> applies it to the first component.
>>>>>
>>>>> In other words, if there is <base> → <base₁><base₂> substitution, the
>>>>> sequence <base><mark> will be rendered as if it was <base₁><base₂><mark>
>>>>> with HB, but as <base₁><mark><base₂> with USP.
>>>>>
>>>>> Using hb-shape with “uniscribe” shaper, and the word “سَتا” and Arabic
>>>>> Typesetting font, I get
>>>>>
>>>>> [uniFE8E=3+343|uniFE98=2+376|uni064E=0 at 501,-260|uni0640.curvehalf=0@,34+152|uniFEB3=0@,34+840]
>>>>> ^^^^^^^^
>>>>> but with “ot” shaper, I get:
>>>>>
>>>>> [uniFE8E=3+343|uniFE98=2+376|uni064E=0 at -11,-310|uni0640.curvehalf=0@,34+152|uniFEB3=0@,34+840]
>>>>> ^^^^^^^^
>>>>> though the glyph string is the same, the position of the mark is clearly
>>>>> different.
>>>>>
>>>>> (background: I need this to contextually insert tatweel to avoid mark
>>>>> collision in “crowded” places, but with the difference between both
>>>>> engines this can’t be reliably done without breaking mark positioning in
>>>>> one of them).
>>>>>
>>>>> Regards,
>>>>> Khaled
>>>>> _______________________________________________
>>>>> HarfBuzz mailing list
>>>>> HarfBuzz at lists.freedesktop.org
>>>>> http://lists.freedesktop.org/mailman/listinfo/harfbuzz
>>>
>
More information about the HarfBuzz
mailing list