[HarfBuzz] harfbuz uniscribe backend and firefox.
Tom Hindle
tom_hindle at sil.org
Thu Aug 6 16:15:00 PDT 2015
Hello,
Recently I created a experimental patch for Firefox to allow use of
harfbuz's uniscribe backend, selectable via a about:config option.
The patch can be seen here:
https://hg.mozilla.org/try/rev/08eef5e76a40
In order to get it work I had to make a couple of changes to hb-uniscribe.cc
This was because when Firefox code calls
hb_font_set_scale(mHBFont, scale, scale);
Its scale values are "16.16 fixed point" format (floats converted to int
by multiplying by 65536) and so it expects values returns by
hb_buffer_get_glyph_positions to be the same format.
I made hb-uniscribe.cc comply with this by scaling by ratio between
font->(x|y)_ppem and font->(x|y)_scale.
Is this something hb-uniscribe.cc should already be doing or is the
Firefox code making unsafe assumptions?
The latest gfxHarfBuzzShaper.cpp source code can be seen here:
https://hg.mozilla.org/mozilla-central/file/03e3d77d1b6b/gfx/thebes/gfxHarfBuzzShaper.cpp
Thanks
Tom
More information about the HarfBuzz
mailing list