Fast GPU cached text rendering using gfx-rs & rusttype.
Makes use of three kinds of caching to optimise frame performance.
usegfx_glyph::{GlyphBrushBuilder,Section};letdejavu:&[u8]=include_bytes!("../../fonts/DejaVuSans.ttf");letmutglyph_brush=GlyphBrushBuilder::using_font_bytes(dejavu).build(gfx_factory.clone());letsection=Section {text:"Hello gfx_glyph", ..Section::default()};glyph_brush.queue(section);glyph_brush.queue(some_other_section);glyph_brush.use_queue().draw(&mutgfx_encoder,&gfx_color)?;
rusttype | Re-exported rusttype types. |
DrawBuilder | Short-lived builder for drawing glyphs, constructed from |
Font | A single font. This may or may not own the font data. |
FontId | Id for a font |
GlyphBrush | Object allowing glyph drawing, containing cache state. Manages glyph positioning cacheing,glyph draw caching & efficient GPU texture cache updating and re-sizing on demand. |
GlyphBrushBuilder | Builder for a |
OwnedSectionText | |
OwnedVariedSection | |
Point | A point in 2-dimensional space, with each dimension of type |
PositionedGlyph | A glyph augmented with positioning and scaling information. You can querysuch a glyph for information that depends on the scale and position of theglyph. |
Rect | A rectangle, with top-left corner at |
Scale | Defines the size of a rendered face of a font, in pixels, horizontally andvertically. A vertical scale of |
Section | An object that contains all the info to render a section of text. |
SectionGeometry | |
SectionText | |
VariedSection | An object that contains all the info to render a varied section of text. That is one includingmany parts with differing fonts/scales/colors bowing to a single layout. |
BuiltInLineBreaker | Built-in linebreaking logic. |
HorizontalAlign | Describes horizontal alignment preference for positioning & bounds. |
Layout | Built-in |
LineBreak | Indicator that a character is a line break, soft or hard. Includes the offset (byte-index)position. |
SharedBytes |
|
VerticalAlign | Describes vertical alignment preference for positioning & bounds. Currently a placeholderfor future functionality. |
FontMap | |
GlyphCruncher | Common glyph layout logic. |
GlyphPositioner | Logic to calculate glyph positioning using |
LineBreaker | Producer of a |
default_transform | Returns the default 4 dimensional matrix orthographic projection used for drawing. |
PositionedGlyphIter |
|
Prefix searches with a type followed by a colon (e.g.,fn:
) to restrict the search to a given type.
Accepted types are:fn
,mod
,struct
,enum
,trait
,type
,macro
, andconst
.
Search functions by type signature (e.g.,vec -> usize
or* -> vec
)
Search multiple things at once by splitting your query with comma (e.g.,str,u8
orString,struct:Vec,test
)