Trait wgpu_glyph::GlyphCruncher [−][src]
pub trait GlyphCruncher<F = FontArc, X = Extra> where
F: Font,
X: Clone, { fn glyphs_custom_layout<'a, S, L>(
&'b mut self,
section: S,
custom_layout: &L
) -> Iter<'b, SectionGlyph>
where
S: Into<Cow<'a, Section<'a, X>>>,
L: GlyphPositioner + Hash,
X: 'a; fn fonts(&self) -> &[F]; fn glyph_bounds_custom_layout<'a, S, L>(
&mut self,
section: S,
custom_layout: &L
) -> Option<Rect>
where
S: Into<Cow<'a, Section<'a, X>>>,
L: GlyphPositioner + Hash,
X: 'a; fn glyphs<'a, S>(&'b mut self, section: S) -> Iter<'b, SectionGlyph>
where
S: Into<Cow<'a, Section<'a, X>>>,
X: 'a, { ... } fn glyph_bounds<'a, S>(&mut self, section: S) -> Option<Rect>
where
S: Into<Cow<'a, Section<'a, X>>>,
X: 'a, { ... } }
Expand description
Common glyph layout logic.
Example
use glyph_brush::GlyphCruncher; let default_font = glyph_brush.fonts()[0];
Required methods
fn glyphs_custom_layout<'a, S, L>(
&'b mut self,
section: S,
custom_layout: &L
) -> Iter<'b, SectionGlyph> where
S: Into<Cow<'a, Section<'a, X>>>,
L: GlyphPositioner + Hash,
X: 'a,
fn glyphs_custom_layout<'a, S, L>(
&'b mut self,
section: S,
custom_layout: &L
) -> Iter<'b, SectionGlyph> where
S: Into<Cow<'a, Section<'a, X>>>,
L: GlyphPositioner + Hash,
X: 'a,
Returns an iterator over the PositionedGlyph
s of the given section with a custom layout.
Generally only drawable glyphs will be returned as invisible glyphs, like spaces, are discarded during layout.
Benefits from caching, see caching behaviour.
Returns the available fonts.
The FontId
corresponds to the index of the font data.
fn glyph_bounds_custom_layout<'a, S, L>(
&mut self,
section: S,
custom_layout: &L
) -> Option<Rect> where
S: Into<Cow<'a, Section<'a, X>>>,
L: GlyphPositioner + Hash,
X: 'a,
fn glyph_bounds_custom_layout<'a, S, L>(
&mut self,
section: S,
custom_layout: &L
) -> Option<Rect> where
S: Into<Cow<'a, Section<'a, X>>>,
L: GlyphPositioner + Hash,
X: 'a,
Returns a bounding box for the section glyphs calculated using each glyph’s vertical & horizontal metrics.
If the section is empty or would result in no drawn glyphs will return None
.
Invisible glyphs, like spaces, are discarded during layout so trailing ones will not affect the bounds.
The bounds will always lay within the specified layout bounds, ie that returned
by the layout’s bounds_rect
function.
Benefits from caching, see caching behaviour.
Provided methods
Returns an iterator over the PositionedGlyph
s of the given section.
Generally only drawable glyphs will be returned as invisible glyphs, like spaces, are discarded during layout.
Benefits from caching, see caching behaviour.
Returns a bounding box for the section glyphs calculated using each glyph’s vertical & horizontal metrics.
If the section is empty or would result in no drawn glyphs will return None
.
Invisible glyphs, like spaces, are discarded during layout so trailing ones will not affect the bounds.
The bounds will always lay within the specified layout bounds, ie that returned
by the layout’s bounds_rect
function.
Benefits from caching, see caching behaviour.