New
Version 0.16.0
Added
- Support for mark filtering sets.
- Support for shaping text that uses Myanmar script, such as Burmese.
- Support kerning via
kerntable. - Support for shaping with the
morxtable. - Support parsing
COLRv0,COLRv1, andCPALtables. - Support traversing the paint operators of the
COLRtable. - Apply variations when visiting the outlines of
glyfbased fonts. - Introduce subsetting profiles for more influence over subsetting.
- Provide access to bounding box of glyphs.
Changed
- Parse
headtable up front inFont. Publichead_tablefield replaceshead_tablemethod. - Introduce
MissingTablevariant toParseError. This is used in place ofMissingValuein the default implementation ofread_table_datainFontTableProvider. - Update to use Unicode 16 tables.
- Update brotli-decompressor to use Rust implementation.
- Apply
GPOSlookups in global order. - Increase MSRV to 1.83.0.
- Replace use of
Rcin layout cache withArc.
Fixed
- Respect flip flag in
sbixlookup. - Skip over whole input sequence with applying GPOS chained context positioning.
- Always honour variation selector when glyph mapping.
- Fix handling of glyph index 0 in CMAP format 4.
- Apply a maximum limit to GPOS substitutions.
- Relax CMAP format 4 length check to support fonts in the wild.
Full Changelog: https://github.com/yeslogic/allsorts/compare/v0.15.0...v0.16.0