pub struct Section<'a, X = Extra> {
pub screen_position: (f32, f32),
pub bounds: (f32, f32),
pub layout: Layout<BuiltInLineBreaker>,
pub text: Vec<Text<'a, X>, Global>,
}
Expand description
An object that contains all the info to render a varied section of text. That is one including many parts with differing fonts/scales/colors bowing to a single layout.
Example
use glyph_brush::{HorizontalAlign, Layout, Text, Section};
let section = Section::default()
.add_text(Text::new("The last word was ").with_color([0.0, 0.0, 0.0, 1.0]))
.add_text(Text::new("RED").with_color([1.0, 0.0, 0.0, 1.0]))
.with_layout(Layout::default().h_align(HorizontalAlign::Center));
Extra
Extra text section data is stored in a generic type, default Extra
. To use custom
extra
data ensure your custom type implements Debug
, Clone
, PartialEq
& Hash
.
Fields§
§screen_position: (f32, f32)
Position on screen to render text, in pixels from top-left. Defaults to (0, 0).
bounds: (f32, f32)
Max (width, height) bounds, in pixels from top-left. Defaults to unbounded.
layout: Layout<BuiltInLineBreaker>
Built in layout, can be overridden with custom layout logic
see queue_custom_layout
text: Vec<Text<'a, X>, Global>
Text to render, rendered next to one another according the layout.
Implementations§
source§impl<'a, X> Section<'a, X>
impl<'a, X> Section<'a, X>
pub fn with_screen_position<P>(self, position: P) -> Section<'a, X>where P: Into<(f32, f32)>,
pub fn with_bounds<P>(self, bounds: P) -> Section<'a, X>where P: Into<(f32, f32)>,
pub fn with_layout<L>(self, layout: L) -> Section<'a, X>where L: Into<Layout<BuiltInLineBreaker>>,
pub fn add_text<T>(self, text: T) -> Section<'a, X>where T: Into<Text<'a, X>>,
pub fn with_text<X2>(self, text: Vec<Text<'_, X2>, Global>) -> Section<'_, X2>
Trait Implementations§
source§impl<X> From<&Section<'_, X>> for SectionGeometry
impl<X> From<&Section<'_, X>> for SectionGeometry
source§fn from(section: &Section<'_, X>) -> SectionGeometry
fn from(section: &Section<'_, X>) -> SectionGeometry
Converts to this type from the input type.