All notable changes to crossfont are documented in this file.
The sections should follow the order Added, Changed, Fixed, and Removed.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Ignore colored SVG fonts in fontconfig backend
- MSRV changed to 1.77.0
- Breaking yeslogic-fontconfig-sys bumped to 6.0.0
- MSRV changed to 1.71.0
- Fixed leak after searching a font with fontconfig backend
- Breaking fontconfig system library provider changed to yeslogic-fontcontconfig-sys
- Breaking freetype-rs bumped to 0.36.0
- On macOS,
AppleFontSmoothingnot recognized when specified as string
Size::as_pxandSize::from_pxnow usef32type
Sizenow uses 6 floating point digits precision instead of rounding to 0.5- Add
Size::from_px,Size::as_px,Size::as_pt, andSize::scale - Remove
Rasterizer::update_dpr; users should scale fonts themselves
- Minimum Rust version has been bumped to 1.65
- Font size of scalable colored glyphs
- macOS underline metrics being relative to descent and not baseline
- On macOS, use the
AppleFontSmoothinguser default to decide whether fonts should be "smoothed"
- Renamed
darwin::Rasterizertodarwin::CoreTextRasterizer
- On macOS,
use_thin_strokesandset_font_smoothingdid not work since Big Sur
use_thin_strokesparameter fromRasterize::newtrait methodset_font_smoothingfrom thedarwinmoduleget_family_namesfrom thedarwinmodule
- Crash on macOS when loading disabled font
- Fix 32-bit build with FreeType/Fontconfig backend
- FreeType proportional font metrics using
RasterizedGlyph::advanceandRasterize::kerning
- Minimum Rust version has been bumped to 1.56.0
- Minimum Rust version has been bumped to 1.46.0
- Core Text backend uses a current font as the original fallback font instead of Menlo
- Core Text backend ignoring style for font fallback
- Fontconfig not checking for fonts installed after
Rasterizercreation - Crash with non-utf8 font paths on Linux
- Bitmap rendering with FreeType 2.11.0
- FreeType font height metric will now use
(ascent - descent)if it is bigger than height - Several types have been renamed to comply with the
upper_case_acronymsclippy lint
- The rasterizer's
Errortype is now shared across platforms - Missing glyphs are now returned as the content of the
MissingGlypherror RasterizedGlyph'scandbuffields are now namedcharacterandbufferrespectivelyGlyphKey'scfield is now namedcharacter
- Minimum Rust version has been bumped to 1.43.0
- Compilation with FreeType version below 2.8.0 on Linux/BSD