Crates.io | sfnt |
lib.rs | sfnt |
version | 0.12.0 |
source | src |
created_at | 2018-04-25 09:10:23.386414 |
updated_at | 2019-01-02 09:04:36.883837 |
description | A zero-allocation SFNT parser. |
homepage | |
repository | https://github.com/glyph-rs/sfnt |
max_upload_size | |
id | 62216 |
size | 33,418 |
A zero-allocation SFNT parser.
Released under the Apache License 2.0.
Supported on Rust 1.31.0 and later.
use std::fs::{File};
use std::io::{Read};
use sfnt::{Record, Sfnt, Tag};
fn main() {
// Read the font file into memory.
let mut file = File::open("tests/resources/OpenSans-Italic.ttf").unwrap();
let mut bytes = vec![];
file.read_to_end(&mut bytes).unwrap();
// Parse the font file and find one of the tables in the font file.
let sfnt = Sfnt::parse(&bytes).unwrap();
let (record, bytes) = sfnt.find(b"head").unwrap();
assert_eq!(record, Record {
tag: Tag(b"head"),
checksum: 4165466467,
offset: 316,
length: 54,
});
assert_eq!(bytes.len(), 54);
}