fontdb
A simple, in-memory font database with CSS-like queries.
0.24.0
30M downloads/mo
#1681 most downloaded on crates.io
RazrFalcon/fontdb
What this package is like to depend on
Last release 25 days ago
29 Jul 2026
Ships unpredictably
gaps range from 9 days to 1.8 years
Nearly every release is documented
notes for 38 of 39 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
39 releases · first in 2020
1 release in the last 12 months
see the full history below
Release timeline
39 releases · Jul 2020 to Jul 2026
2021
2022
2023
2024
2025
2026
Releases
latest 39-
0.24.029 Jul 2026Release notes
Open source →Added
- Support loading system fonts on iOS.
Changed
fontdbno longer depends onttf-parser. It vendors a minimal subset instead.- MSRV bumped to 1.71 due to
log.
-
0.23.009 Oct 2024 -
0.22.009 Sep 2024Release notes
Open source →Changed
- Fallback to known font dirs if none were loaded via fontconfig. Linux-only. @MoSal
-
0.21.006 Aug 2024Release notes
Open source →Added
- Symlinked files and directories will now be included when loading system fonts. @jcdickinson
-
0.20.002 Jul 2024 -
0.19.002 Jul 2024 -
0.18.001 Jun 2024 -
0.17.010 May 2024Release notes
Open source → -
0.16.219 Feb 2024Release notes
Open source →Fixed
- System fonts loading on Windows when the system drive is not
C:\\. @tronical
- System fonts loading on Windows when the system drive is not
-
0.16.109 Feb 2024 -
0.16.031 Oct 2023 -
0.15.001 Oct 2023Release notes
Open source →Changed
- Enable the
fontconfigfeature by default. Linux-only. - MSRV bumped to 1.60 due to
log.
Fixed
- Fix fontconfig alias matching order. @declantsien
- Enable the
-
0.14.110 May 2023 -
0.14.009 May 2023Release notes
Open source →Changed
Database::load_font_source()returns a list of loaded face IDs now. @notgullttf-parserandmemmap2dependencies update.
-
0.13.123 Apr 2023 -
0.13.021 Feb 2023Release notes
Open source →Added
Database::default(). @7sDream
Changed
- Database uses
slotmap::SlotMapinstead ofVecas an internal storage now. This allows us to have O(1) indexing byIDby sacrificing faces iteration speed a bit. @7sDream Database::remove_faceno longer returnsbool.Database::facesreturns an Iterator and not a slice now.- MSRV bumped to 1.49
-
0.12.005 Feb 2023 -
0.11.209 Jan 2023 -
0.11.126 Dec 2022Release notes
Open source →Fixed
- Always prefer Typographic Family to Family Name when available. @CryZe
- Prevent duplicated family names.
-
0.11.025 Dec 2022Release notes
Open source →Added
- Support localized family names.
- Improve fontconfig support. @declantsien
Changed
FaceInfo::familywas replaced withFaceInfo::familiesand contains a list of family names now.
Fixed
- Improve family name detection in variable fonts.
-
0.10.008 Nov 2022 -
0.9.326 Oct 2022 -
0.9.222 Oct 2022Release notes
Open source →Added
Database::push_face_infoID::dummy
Fixed
- Expand home path
~prefix during fontconfig paths resolving. @snoyer
-
0.9.121 Feb 2022Release notes
Open source →Changed
- Reduce binary size by 10% using less generic code.
- Simplify Database::query implementation.
-
0.9.020 Feb 2022Release notes
Open source →Added
- Way faster fonts scanning by using a more low-level
ttf-parserAPI which allows us to parse only required TrueType tables. On my hardware,load_system_fonts()loaded 898 fonts in 9ms instead of 11ms in the release mode and in 35ms instead of 52ms in debug. Currently, we're parsing onlyname,OS/2andposttables.
- Way faster fonts scanning by using a more low-level
-
0.8.012 Feb 2022Release notes
Open source →Added
- Load user fonts on Windows.
fontconfigfeature to allow retrieving font dirs from the fontconfig config file instead of using hardcoded paths. Linux-only. @Riey
-
0.7.003 Oct 2021Release notes
Open source →Changed
- The
Sourceenum has a new variantSharedFile, used for unsafe persistent memory mappings. FaceInfostoresSourcedirectly now, not anymore in anArc. InsteadSource::Binarynow stores anArcof the data.
- The
-
0.6.204 Sep 2021 -
0.6.104 Sep 2021 -
0.6.021 Aug 2021Release notes
Open source →Added
- Search in
$HOME/.fontson Linux. @Linus789
Changed
- Generic font families are preset by default instead of being set to
None.
- Search in
-
0.5.425 May 2021Release notes
Open source → -
0.5.319 May 2021 -
0.5.219 May 2021 -
0.5.120 Dec 2020 -
0.5.020 Dec 2020Release notes
Open source →Added
FaceInfo::post_script_nameFaceInfo::monospacedDatabase::load_system_fonts
-
0.4.006 Dec 2020 -
0.3.005 Dec 2020 -
0.2.021 Jul 2020Release notes
Open source →Changed
ttf-parserupdated.
Fixed
- Stretch processing.
ttf-parserwas incorrectly parsing this property.
-
0.1.002 Jul 2020Nothing published for this version