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>>,
}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, Section, Text};
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>>Text to render, rendered next to one another according the layout.
Implementations§
Source§impl Section<'_, ()>
impl Section<'_, ()>
Sourcepub fn builder() -> SectionBuilder
pub fn builder() -> SectionBuilder
Return a SectionBuilder to fluently build up a Section.
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>
pub fn with_bounds<P>(self, bounds: P) -> Section<'a, X>
pub fn with_layout<L>(self, layout: L) -> Section<'a, X>
pub fn add_text<T>(self, text: T) -> Section<'a, X>
pub fn with_text<X2>(self, text: Vec<Text<'_, X2>>) -> Section<'_, X2>
Trait Implementations§
Source§impl Default for Section<'static>
impl Default for Section<'static>
Source§fn default() -> Section<'static>
fn default() -> Section<'static>
Note this only works for X=Extra for more flexible use see Section::builder.
Source§impl<'a, X> From<&'a OwnedSection<X>> for Section<'a, X>where
X: Clone,
impl<'a, X> From<&'a OwnedSection<X>> for Section<'a, X>where
X: Clone,
Source§fn from(owned: &'a OwnedSection<X>) -> Section<'a, X>
fn from(owned: &'a OwnedSection<X>) -> Section<'a, X>
use glyph_brush::{OwnedSection, OwnedText, Section};
let section = OwnedSection::default().add_text(OwnedText::new("foo").with_extra(1usize));
let cow: Section<'_, usize> = (§ion).into();Source§impl<'a> From<&'a OwnedVariedSection> for Section<'a>
impl<'a> From<&'a OwnedVariedSection> for Section<'a>
Source§fn from(owned: &'a OwnedVariedSection) -> Section<'a>
fn from(owned: &'a OwnedVariedSection) -> Section<'a>
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
Source§impl<'a> From<&Section<'a>> for VariedSection<'a>
impl<'a> From<&Section<'a>> for VariedSection<'a>
Source§fn from(s: &Section<'a>) -> VariedSection<'a>
fn from(s: &Section<'a>) -> VariedSection<'a>
Source§impl<'a> From<&VariedSection<'a>> for Section<'a>
impl<'a> From<&VariedSection<'a>> for Section<'a>
Source§fn from(s: &VariedSection<'a>) -> Section<'a>
fn from(s: &VariedSection<'a>) -> Section<'a>
Source§impl<'a> From<VariedSection<'a>> for Section<'a>
impl<'a> From<VariedSection<'a>> for Section<'a>
Source§fn from(s: VariedSection<'a>) -> Section<'a>
fn from(s: VariedSection<'a>) -> Section<'a>
impl<'a, X> StructuralPartialEq for Section<'a, X>where
X: PartialEq,
Auto Trait Implementations§
impl<'a, X> Freeze for Section<'a, X>
impl<'a, X> RefUnwindSafe for Section<'a, X>where
X: RefUnwindSafe,
impl<'a, X> Send for Section<'a, X>where
X: Send,
impl<'a, X> Sync for Section<'a, X>where
X: Sync,
impl<'a, X> Unpin for Section<'a, X>where
X: Unpin,
impl<'a, X> UnsafeUnpin for Section<'a, X>
impl<'a, X> UnwindSafe for Section<'a, X>where
X: UnwindSafe,
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<Swp, Dwp, T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<Swp, Dwp, T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CallHasher for T
impl<T> CallHasher for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Content for T
impl<T> Content for T
Source§fn ref_from_ptr<'a>(ptr: *mut c_void, size: usize) -> Option<*mut T>
fn ref_from_ptr<'a>(ptr: *mut c_void, size: usize) -> Option<*mut T>
Source§fn is_size_suitable(size: u64) -> bool
fn is_size_suitable(size: u64) -> bool
Source§fn indiv_size() -> u64
fn indiv_size() -> u64
Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> SafeBorrow<T> for T
Source§impl<T> TraitComparable for T
impl<T> TraitComparable for T
fn as_any(&self) -> &(dyn Any + 'static)
fn as_trait_comparable(&self) -> &dyn TraitComparable
fn eq(&self, other: &dyn TraitComparable) -> bool
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read more