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
        X: 'a,
        L: GlyphPositioner + Hash,
        S: Into<Cow<'a, Section<'a, X>>>
; fn fonts(&self) -> &[F]Notable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]; fn glyph_bounds_custom_layout<'a, S, L>(
        &mut self,
        section: S,
        custom_layout: &L
    ) -> Option<Rect>
    where
        X: 'a,
        L: GlyphPositioner + Hash,
        S: Into<Cow<'a, Section<'a, X>>>
; fn glyphs<'a, S>(&'b mut self, section: S) -> Iter<'b, SectionGlyph>
    where
        X: 'a,
        S: Into<Cow<'a, Section<'a, X>>>
, { ... } fn glyph_bounds<'a, S>(&mut self, section: S) -> Option<Rect>
    where
        X: 'a,
        S: Into<Cow<'a, Section<'a, X>>>
, { ... } }
Expand description

Common glyph layout logic.

Example

use glyph_brush::GlyphCruncher;

let default_font = glyph_brush.fonts()[0];

Required Methods

Returns an iterator over the PositionedGlyphs 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.

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 PositionedGlyphs 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.

Implementations on Foreign Types

Implementors