skrifa

Crates.io Docs MIT/Apache 2.0

This crate aims to be a robust, ergonomic, high performance library for reading OpenType fonts. It is built on top of the read-fonts low level parsing library and is also part of the oxidize project.

Features

Metadata

The following information is currently exposed:

Future goals include:

Glyph scaling

Current (✔️), near term (🔜) and planned (⌛) feature matrix:

| Source | Decoding | Variations | Hinting | |--------|---------|------------|---------| | glyf | ✔️ | ✔️ | ⌛* | | CFF | ⌛ | ⌛ | ⌛ | | CFF2 | ⌛ | ⌛ | ⌛ | | COLRv0 | 🔜 | 🔜 | * | | COLRv1 | 🔜 | 🔜 | * | | EBDT | 🔜 | - | - | | CBDT | 🔜 | - | - | | sbix | 🔜 | - | - |

* A working implementation exists for hinting but is not yet merged.

** This will be supported but is probably not desirable due the general affine transforms present in the paint graph.

Safety

Unsafe code is forbidden by a #![forbid(unsafe_code)] attribute in the root of the library.

Panicking

This library should not panic regardless of API misuse or use of corrupted/malicious font files. Please file an issue if this occurs.

The name?

Following along with our theme, skrifa is Old Norse for "write" or "it is written." And so it is named.