skrifa/outline/glyf/hint/
mod.rs

1//! TrueType hinting.
2
3mod call_stack;
4mod cow_slice;
5mod cvt;
6mod definition;
7mod engine;
8mod error;
9mod graphics;
10mod instance;
11mod math;
12mod program;
13mod projection;
14mod round;
15mod storage;
16mod value_stack;
17mod zone;
18
19use super::super::Target;
20
21use read_fonts::{
22    tables::glyf::PointFlags,
23    types::{F26Dot6, F2Dot14, GlyphId, Point},
24};
25
26pub use error::HintError;
27pub use instance::HintInstance;
28
29/// Outline data that is passed to the hinter.
30pub struct HintOutline<'a> {
31    pub glyph_id: GlyphId,
32    pub unscaled: &'a [Point<i32>],
33    pub scaled: &'a mut [Point<F26Dot6>],
34    pub original_scaled: &'a mut [Point<F26Dot6>],
35    pub flags: &'a mut [PointFlags],
36    pub contours: &'a [u16],
37    pub phantom: &'a mut [Point<F26Dot6>],
38    pub bytecode: &'a [u8],
39    pub stack: &'a mut [i32],
40    pub cvt: &'a mut [i32],
41    pub storage: &'a mut [i32],
42    pub twilight_scaled: &'a mut [Point<F26Dot6>],
43    pub twilight_original_scaled: &'a mut [Point<F26Dot6>],
44    pub twilight_flags: &'a mut [PointFlags],
45    pub is_composite: bool,
46    pub coords: &'a [F2Dot14],
47}