harfbuzz / harfruzz

Port of RustyBuzz to use Fontations
MIT License
36 stars 3 forks source link

Use a published version of skrifa #4

Closed rsheeter closed 3 months ago

rsheeter commented 3 months ago

Step toward #3

Migration to read-fonts instead of skrifa left for a follow-on

Some of the gid handling is dodgy wrt 16 vs 32 bit. Fully migration to read-fonts should tidy that up.

LaurenzV commented 3 months ago

TODO: read-fonts instead

Just FYI, for 100% correctness, I'm not sure whether it will be possible to replace skrifa completely. There is the one method glyph_extents, which (among other things) relies on outlining COLR glyphs to calculate the exact extents and are used in glyph_v_origin, position_mark and position_around_base. I guess it's an edge case since the outlining is only necessary for COLR, but still.

behdad commented 3 months ago

TODO: read-fonts instead

Just FYI, for 100% correctness, I'm not sure whether it will be possible to replace skrifa completely. There is the one method glyph_extents, which (among other things) relies on outlining COLR glyphs to calculate the exact extents and are used in glyph_v_origin, position_mark and position_around_base. I guess it's an edge case since the outlining is only necessary for COLR, but still.

I think in a forward-looking library, we can ignore cases where glyph_extents is not readily available (like CFF and COLRv1). We didn't have CFF extents for years in HB and no body complained. Also, because Windows doesn't have such a fallback mark positioning heuristic.