All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
0.23.0 - 2024-10-09
ttf-parser
updated.
0.22.0 - 2024-09-09
- Fallback to known font dirs if none were loaded via fontconfig. Linux-only. @MoSal
0.21.0 - 2024-08-06
- Symlinked files and directories will now be included when loading system fonts. @jcdickinson
0.20.0 - 2024-07-02
ttf-parser
updated.
0.19.0 - 2024-07-02
ttf-parser
updated.
0.18.0 - 2024-06-01
Database::push_face_info
returns anID
now. @laurmaedje
0.17.0 - 2024-05-10
- Latest
ttf-parser
.
0.16.2 - 2024-02-19
- System fonts loading on Windows when the system drive is not
C:\\
. @tronical
0.16.1 - 2024-02-09
- Treat fonts with non-zero italic angle as italic.
0.16.0 - 2023-10-31
ttf-parser
andmemmap2
dependencies update.
0.15.0 - 2023-10-01
- Enable the
fontconfig
feature by default. Linux-only. - MSRV bumped to 1.60 due to
log
.
- Fix fontconfig alias matching order. @declantsien
0.14.1 - 2023-05-10
- Return valid IDs from
Database::load_font_source()
. @notgull
0.14.0 - 2023-05-09
Database::load_font_source()
returns a list of loaded face IDs now. @notgullttf-parser
andmemmap2
dependencies update.
0.13.1 - 2023-04-23
- Load system fonts on RedoxOS. @FloVanGH
- Improve missing
XDG_CONFIG_HOME
environment variable handling. Linux only. @7sDream - Improve downloadable fonts detection on macOS. @messense
0.13.0 - 2023-02-21
Database::default()
. @7sDream
- Database uses
slotmap::SlotMap
instead ofVec
as an internal storage now. This allows us to have O(1) indexing byID
by sacrificing faces iteration speed a bit. @7sDream Database::remove_face
no longer returnsbool
.Database::faces
returns an Iterator and not a slice now.- MSRV bumped to 1.49
0.12.0 - 2023-02-05
- Face weight matching.
0.11.2 - 2023-01-10
- Implement
Display
trait forID
. @7sDream
0.11.1 - 2022-12-26
- Always prefer Typographic Family to Family Name when available. @CryZe
- Prevent duplicated family names.
0.11.0 - 2022-12-25
- Support localized family names.
- Improve fontconfig support. @declantsien
FaceInfo::family
was replaced withFaceInfo::families
and contains a list of family names now.
- Improve family name detection in variable fonts.
0.10.0 - 2022-11-08
no_std
support. @jackpot51
0.9.3 - 2022-10-26
Database::family_name
is public now.
0.9.2 - 2022-10-22
Database::push_face_info
ID::dummy
- Expand home path
~
prefix during fontconfig paths resolving. @snoyer
0.9.1 - 2022-02-21
- Reduce binary size by 10% using less generic code.
- Simplify Database::query implementation.
0.9.0 - 2022-02-20
- Way faster fonts scanning by using a more low-level
ttf-parser
API 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/2
andpost
tables.
0.8.0 - 2022-02-12
- Load user fonts on Windows.
fontconfig
feature to allow retrieving font dirs from the fontconfig config file instead of using hardcoded paths. Linux-only. @Riey
0.7.0 - 2021-10-04
- The
Source
enum has a new variantSharedFile
, used for unsafe persistent memory mappings. FaceInfo
storesSource
directly now, not anymore in anArc
. InsteadSource::Binary
now stores anArc
of the data.
0.6.2 - 2021-09-04
- Fix compilation without the
fs
feature.
0.6.1 - 2021-09-04
- Split the
fs
build feature intofs
andmemmap
. @neinseg
0.6.0 - 2021-08-21
- Search in
$HOME/.fonts
on Linux. @Linus789
- Generic font families are preset by default instead of being set to
None
.
0.5.4 - 2021-05-25
- Implement
Eq
,Hash
forQuery
,Family
,Weight
andStyle
. @dhardy
- Update
ttf-parser
0.5.3 - 2021-05-19
- Update
ttf-parser
0.5.2 - 2021-05-19
- Update
memmap2
- Add additional search dir for macOS.
0.5.1 - 2020-12-20
- Compilation on Windows.
0.5.0 - 2020-12-20
FaceInfo::post_script_name
FaceInfo::monospaced
Database::load_system_fonts
0.4.0 - 2020-12-06
- Use a simple
u32
for ID instead of UUID.
0.3.0 - 2020-12-05
ttf-parser
updated.
0.2.0 - 2020-07-21
ttf-parser
updated.
- Stretch processing.
ttf-parser
was incorrectly parsing this property.