pub struct SimplePass<'a, 'v, S: Scale> {Show 13 fields
pub glyph: &'a SimpleGlyph<'a>,
pub scaled: &'a mut [Point<S::Coord>],
pub unscaled: &'a mut [Point<i32>],
pub flags: &'a mut [PointFlags],
pub contours: &'a [u16],
pub phantom: [Point<S::Coord>; 4],
pub deltas: DeltaBuffers<'a, S::Delta>,
pub var_data: Option<GlyphVariationData<'v>>,
pub varies: bool,
pub coords: &'a [F2Dot14],
pub gvar_scalars: &'a [Fixed],
pub has_hvar: bool,
pub is_hinted: bool,
}Expand description
Everything Scale::load_simple_points needs beyond the glyph itself.
Fields§
§glyph: &'a SimpleGlyph<'a>The glyph being read.
scaled: &'a mut [Point<S::Coord>]Output coordinates, sized for the glyph’s points plus phantom points.
unscaled: &'a mut [Point<i32>]Font unit coordinates, empty unless Scale::NEEDS_UNSCALED.
flags: &'a mut [PointFlags]Point flags, the same length as scaled.
contours: &'a [u16]Contour end points, already read and relative to this glyph.
phantom: [Point<S::Coord>; 4]The phantom points to append, in font units.
deltas: DeltaBuffers<'a, S::Delta>Delta and interpolation buffers, empty for a static instance.
var_data: Option<GlyphVariationData<'v>>The variation data to apply, or None if this glyph has none.
Has its own lifetime because it is invariant and cannot shrink to match the borrows above.
varies: boolTrue if the font varies, whatever this glyph has.
A glyph with no variation data still takes the delta path, on zeroed deltas, because the two paths round differently.
coords: &'a [F2Dot14]Normalized variation coordinates, empty for a static instance.
gvar_scalars: &'a [Fixed]Cached shared tuple scalars at coords.
has_hvar: boolTrue if the font has HVAR, which changes how FreeType rounds the
deltas it applies to phantom points.
is_hinted: boolTrue if the loaded outline will be hinted.