#font #typography #woff #woff2 #typeface

webtype

The package provides a parser for fonts in Web Open Font Format

20 releases (breaking)

0.15.0 May 21, 2024
0.13.1 Feb 16, 2024
0.7.0 Aug 19, 2023
0.4.0 Jul 21, 2023
0.2.1 Mar 27, 2023

#32 in Data formats

Download history 121/week @ 2024-03-11 59/week @ 2024-03-18 11/week @ 2024-03-25 73/week @ 2024-04-01 90/week @ 2024-04-08 420/week @ 2024-04-22 192/week @ 2024-05-13 424/week @ 2024-05-20 173/week @ 2024-05-27 57/week @ 2024-06-03 15/week @ 2024-06-10 12/week @ 2024-06-24

89 downloads per month
Used in 3 crates (via font)

Apache-2.0/MIT

100KB
313 lines

Contains (WOFF font, 93KB) NotoNaskhArabic-Regular.woff2

WebType Package Documentation Build

The package provides a parser for fonts in Web Open Font Format. It might be helpful to have a look at a higher-level abstraction called font, which internally relies on this package.

Example

use webtype::opentype::truetype::tables::FontHeader;
use webtype::File;

macro_rules! ok(($result:expr) => ($result.unwrap()));

let path = "NotoNaskhArabic-Regular.woff2";
let mut tape = ok!(std::fs::File::open(path));
let File { mut fonts, mut tape } = ok!(File::read(&mut tape));

let font_header = ok!(ok!(fonts[0].take::<_, FontHeader>(&mut tape)));
assert_eq!(font_header.units_per_em, 2048);

Contribution

Your contribution is highly appreciated. Do not hesitate to open an issue or a pull request. Note that any contribution submitted for inclusion in the project will be licensed according to the terms given in LICENSE.md.

Dependencies

~2.5MB
~41K SLoC