Skip to main content

TextPrimitiveNode

Struct TextPrimitiveNode 

Source
pub struct TextPrimitiveNode {
    pub node_id: NodeId,
    pub rect: Rect,
    pub text: Rc<AnnotatedString>,
    pub render_text: Arc<RenderString>,
    pub text_style: Arc<TextStyle>,
    pub font_size: f32,
    pub layout_options: TextLayoutOptions,
    pub clip: Option<Rect>,
    pub paint: TextPaintCache,
}

Fields§

§node_id: NodeId§rect: Rect§text: Rc<AnnotatedString>

Shared so the renderer can hand the same allocation to every draw it emits for this node instead of deep-copying the string once per emit.

§render_text: Arc<RenderString>

text as the renderer’s draws carry it across threads, shared with the prepared layout it came from so no frame converts it again.

§text_style: Arc<TextStyle>

Shared so every frame’s draws of this text hand over the same style instead of copying it.

§font_size: f32§layout_options: TextLayoutOptions§clip: Option<Rect>§paint: TextPaintCache

What a renderer reads of text_style and text’s spans to draw the glyphs, so that drawing a plain text does not load the style.

Implementations§

Source§

impl TextPrimitiveNode

Source

pub fn paint(&self) -> TextPaint

The paint of the node’s glyphs.

Source

pub fn draw_bounds(&self) -> Option<Rect>

Conservative bounds for the emitted glyphs and paint. Returns None when an unclipped layout or style can draw beyond its layout rectangle.

Trait Implementations§

Source§

impl Clone for TextPrimitiveNode

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TextPrimitiveNode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for TextPrimitiveNode

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for TextPrimitiveNode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.