Hey all, I'm running HarfBuzz 1.2.4 with a modified hb_font implementation based on the FreeType implementation in the vanilla version.
One of the differences is that I pass through the FreeType scale as user-data and apply it when getting the metrics from FreeType (via FT_Set_Transform). We've been running with this for a while, and haven't noticed any issues until today when we tried it with some Thai text and found that the hb_glyph_position_t::x_offset was coming back wrong once the text was scaled (weirdly this same issue doesn't seem to affect hb_glyph_position_t::y_offset). When the scale is 1, everything is fine, but when the scale is <1 the glyph is too far right (suggesting that the offset is too large), and when the scale is >1 the glyph is too far left (suggesting that the offset is too small). That would suggest to me that the value I'm getting back hasn't been scaled appropriately for the actual FreeType glyph. Unfortunately I'm not familiar enough with how HarfBuzz calculates that value to know where that lack of scale is happening. I do notice that there's no FreeType override for the set_glyph_h_origin_func from hb_font. Could that be the issue? The Thai text being used is ฝึ (U+0E1D, U+0E36) and the font is Tahoma (available in Windows). Has anyone else attempted something like this? Thanks, Jamie.
_______________________________________________ HarfBuzz mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/harfbuzz
