| Vulnerabilities | |||||
|---|---|---|---|---|---|
| Version | Suggest | Low | Medium | High | Critical |
| 0.23.0 | 0 | 0 | 0 | 0 | 0 |
| 0.22.0 | 0 | 0 | 0 | 0 | 0 |
| 0.21.0 | 0 | 0 | 0 | 0 | 0 |
| 0.20.0 | 0 | 0 | 0 | 0 | 0 |
| 0.19.0 | 0 | 0 | 0 | 0 | 0 |
| 0.18.0 | 0 | 0 | 0 | 0 | 0 |
| 0.17.0 | 0 | 0 | 0 | 0 | 0 |
| 0.16.2 | 0 | 0 | 0 | 0 | 0 |
| 0.16.1 | 0 | 0 | 0 | 0 | 0 |
| 0.16.0 | 0 | 0 | 0 | 0 | 0 |
| 0.15.0 | 0 | 0 | 0 | 0 | 0 |
| 0.14.1 | 0 | 0 | 0 | 0 | 0 |
| 0.14.0 | 0 | 0 | 0 | 0 | 0 |
| 0.13.1 | 0 | 0 | 0 | 0 | 0 |
| 0.13.0 | 0 | 0 | 0 | 0 | 0 |
| 0.12.0 | 0 | 0 | 0 | 0 | 0 |
| 0.11.2 | 0 | 0 | 0 | 0 | 0 |
| 0.11.1 | 0 | 0 | 0 | 0 | 0 |
| 0.11.0 | 0 | 0 | 0 | 0 | 0 |
| 0.10.0 | 0 | 0 | 0 | 0 | 0 |
| 0.9.3 | 0 | 0 | 0 | 0 | 0 |
| 0.9.2 | 0 | 0 | 0 | 0 | 0 |
| 0.9.1 | 0 | 0 | 0 | 0 | 0 |
| 0.9.0 | 0 | 0 | 0 | 0 | 0 |
| 0.8.0 | 0 | 0 | 0 | 0 | 0 |
| 0.7.0 | 0 | 0 | 0 | 0 | 0 |
| 0.6.2 | 0 | 0 | 0 | 0 | 0 |
| 0.6.1 | 0 | 0 | 0 | 0 | 0 |
| 0.6.0 | 0 | 0 | 0 | 0 | 0 |
| 0.5.4 | 0 | 0 | 0 | 0 | 0 |
| 0.5.3 | 0 | 0 | 0 | 0 | 0 |
| 0.5.2 | 0 | 0 | 0 | 0 | 0 |
| 0.5.1 | 0 | 0 | 0 | 0 | 0 |
| 0.5.0 | 0 | 0 | 0 | 0 | 0 |
| 0.4.0 | 0 | 0 | 0 | 0 | 0 |
| 0.3.0 | 0 | 0 | 0 | 0 | 0 |
| 0.2.0 | 0 | 0 | 0 | 0 | 0 |
| 0.1.0 | 0 | 0 | 0 | 0 | 0 |
0.23.0 - This version may not be safe as it has not been updated for a long time. Find out if your coding project uses this component and get notified of any reported security vulnerabilities with Meterian-X Open Source Security Platform
Maintain your licence declarations and avoid unwanted licences to protect your IP the way you intended.
MIT - MIT Licensefontdb is a simple, in-memory font database with CSS-like queries.
Vec<u8>).Database::query.Advanced font properties querying.
The database provides only storage and matching capabilities.
For font properties querying you can use ttf-parser.
A font fallback mechanism.
This library can be used to implement a font fallback mechanism, but it doesn't implement one.
Application's global database.
The database doesn't use static, therefore it's up to the caller where it should be stored.
Font types support other than TrueType.
A font is a collection of font faces. Therefore, a font face is a subset of a font. A simple font (*.ttf/*.otf) usually contains a single font face, but a font collection (*.ttc) can contain multiple font faces.
fontdb stores and matches font faces, not fonts.
Therefore, after loading a font collection with 5 faces (for example), the database will be
populated with 5 FaceInfo objects, all of which will be pointing to the same file or binary data.
The database performance is largely limited by the storage itself. We are using ttf-parser, so the parsing should not be a bottleneck.
For example, on Mac Book Pro 14 with M1 Pro, it takes just ~24ms to load 1361 font faces.
The library relies on memory-mapped files, which is inherently unsafe. But since we do not keep the files open it should be perfectly safe.
If you would like to use a persistent memory mapping of the font files,
then you can use the unsafe Database::make_shared_face_data function.
MIT