1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! The crate's error type.
//!
//! Very little here is fatal. A Type 1 program that names a subroutine it does
//! not have, blends with a weight vector of the wrong arity, or runs off the
//! end of a charstring yields *no outline for that glyph* — the font is still
//! usable for every other glyph, so those cases surface as `None` from
//! [`outline`](crate::Type1Font::outline) rather than as an `Err`.
//!
//! `Error` is reserved for "this blob is not a font we can use at all".
/// Why a Type 1 font program could not be read.