[HarfBuzz] Accent positioning with greek smallcaps

Behdad Esfahbod behdad at behdad.org
Sat Jan 12 00:15:07 PST 2013


On 13-01-11 02:18 AM, Georg Duffner wrote:
> Thank you, Behdad!
> 
> I’ve found the problematic parts and fixed them in the font. In fact,
> Fontforge did warn about it, but I didn’t see the warning due to script based
> font generation.


Interesting.  Can you elaborate a bit?  I don't use Fontforge myself.  What
was exactly wrong?

I think the way HarfBuzz now handles this is still superior, so leaving it as is.

Cheers,
behdad

> Am 2013-01-08 23:18, schrieb Behdad Esfahbod:
>> Figured it out:
>>
>> If you check with ttx for example, indeed Lookup 34, MarkBasePos subtable 1
>> covers that mark and base sequence but has no anchor for it.  However,
>> subtable 2 has.  Just fixed HarfBuzz to keep looking if an anchor is missing.
>>   Renders fine now.
>>
>> Thanks,
>>
>> behdad
>>
>> On 13-01-08 01:14 AM, Georg Duffner wrote:
>>> Hi Behdad,
>>>
>>> which tool did you use for debugging? With Fontforge I can’t find the null
>>> anchor you found. The source featurefile as well as the featurefile extracted
>>> from the font both show correct values for the anchors and inn Fontforge’s
>>> metrics view, the results look as expected. What’s more, XeTeX and LuaTeX
>>> position the accents correctly (they fail at other places though).
>>>
>>> Georg
>>>
>>> Am 2013-01-07 10:25, schrieb Behdad Esfahbod:
>>>> Hi Georg,
>>>>
>>>> I debugged the font.  It does look like a font issue to me.  The MarkBase
>>>> table for those accents and those bases has a null anchor for the base.
>>>> That's all I know.
>>>>
>>>> behdad
>>>>
>>>> On 13-01-07 02:06 AM, Georg Duffner wrote:
>>>>> Hello,
>>>>>
>>>>> There seems to be something wrong with accent positioning in greek smallcaps
>>>>> with a ccmp feature enabled. In EB Garamond I’ve put together a feature (as
>>>>> stylistic set ss20) that decomposes all composed characters and mark and
>>>>> mkmk
>>>>> anchors are in place where needed. This all works nicely with Harfbuzz
>>>>> except
>>>>> for greek smallcaps as you can see at
>>>>> http://georgduffner.at/ebgaramond/greektests.html (with Firefox of course).
>>>>> Accents are placed in front of the letters at the bottom instead of atop of
>>>>> the letters. The last row of “Smallcaps” shows that latin smallcaps are
>>>>> fine,
>>>>> simple ones as well as stacked ones. I got the same results with hb-view
>>>>> (harfbuzz 0.9.9 on Arch Linux).
>>>>>
>>>>> Results from hb-shape are:
>>>>>
>>>>> 1: (ἂἅἇ)
>>>>> 1: <U+1F02,U+1F05,U+1F07>
>>>>> 1:
>>>>> [alpha.sc=0+549|uni0313.grksc=0 at -751,-630+0|gravecomb.grkstacksc=0 at -626,-630+0|alpha.sc=1+549|uni0314.grksc=1 at -751,-630+0|acutecomb.grkstacksc=1 at -626,-630+0|alpha.sc=2+549|uni0314.grkstacksc=2 at -684,-665+0|uni0342.sc=2 at -771,-489+0]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> and
>>>>>
>>>>> 1: (áäấÄÖÜ)
>>>>> 1: <U+00E1,U+00E4,U+1EA5,U+00C4,U+00D6,U+00DC>
>>>>> 1:
>>>>> [a.sc=0+549|acutecomb.sc=0 at -319,65+0|a.sc=1+549|uni0308.sc=1 at -421,84+0|a.sc=2+549|uni0302.stacksc=2 at -389,65+0|acutecomb.stacksc=2 at -197,167+0|Adieresis.deu=3+684|Odieresis.deu=4+763|Udieresis.deu=5+738]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I attach the results from hb-view.
>>>>> The options used are:
>>>>> --features="ss20","smcp"
>>>>>
>>>>> You can find the font used in the tests at
>>>>> http://georgduffner.at/ebgaramond/tests/EBGaramond12-Regular.otf (it is too
>>>>> big for the limit of this list, even when compressed).
>>>>>
>>>>> Please note that the testpage on the web uses a version of the font where
>>>>> the
>>>>> decomposition table is included in ccmp which I don’t want to because this
>>>>> should only be enabled when really necessary. But it doesn’t make a
>>>>> difference.
>>>>>
>>>>> Best regards,
>>>>> Georg
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> HarfBuzz mailing list
>>>>> HarfBuzz at lists.freedesktop.org
>>>>> http://lists.freedesktop.org/mailman/listinfo/harfbuzz
>>>>>
>>>>
>>>
>>>
>>
> 
> 

-- 
behdad
http://behdad.org/



More information about the HarfBuzz mailing list