Skip to main content

ExtractedText

Struct ExtractedText 

Source
pub struct ExtractedText {
Show 18 fields pub origin: Vec2, pub text: String, pub size_px: f32, pub fill: Color, pub caret: Option<usize>, pub selection: Option<(usize, usize)>, pub selection_color: Option<Color>, pub selection_foreground: Option<Color>, pub caret_color: Option<Color>, pub order: PaintOrder, pub container_width: f32, pub align: TextAlign, pub wrap: TextWrap, pub max_lines: Option<u32>, pub family: Option<Arc<str>>, pub weight: u16, pub line_height_px: f32, pub caret_width_px: f32,
}
Expand description

One text run to render this frame.

PartialEq compares every visual field so the retained Node-IR damage diff can skip an unchanged label without re-shaping - deterministic shaping means identical fields => identical glyphs => identical pixels.

Fields§

§origin: Vec2

Baseline origin in window coordinates at the container’s leading edge. The renderer shifts by (container_width - measured_width) times an alignment fraction to honour Self::align.

§text: String

Unshaped text passed to the shaper.

§size_px: f32

Font size in logical pixels.

§fill: Color

Fill color.

§caret: Option<usize>

Some(byte_offset) paints a vertical caret at the corresponding pixel position inside text.

§selection: Option<(usize, usize)>

Some((start, end)) paints a translucent selection highlight between the byte offsets; start < end.

§selection_color: Option<Color>

Selection highlight background. None falls back to DEFAULT_SELECTION_BG. Sourced from TextStyle::selection_color (selection-color CSS property).

§selection_foreground: Option<Color>

Selected-glyph color (Qt HighlightedText / Slint selection-foreground-color). None keeps glyphs their normal Self::fill. Sourced from [TextStyle::selection_foreground].

§caret_color: Option<Color>

Caret color. None falls back to Self::fill (the text color). Sourced from [TextStyle::caret_color] (caret-color).

§order: PaintOrder

Global paint order.

§container_width: f32

Container width within which the text is aligned. With align == Start the renderer draws at origin directly; other alignments measure the run and shift inside this width.

§align: TextAlign

Horizontal alignment policy.

§wrap: TextWrap

Wrap policy passed to the shaper.

§max_lines: Option<u32>

Hard cap on shaped line count; None is unbounded.

§family: Option<Arc<str>>

CSS font-family fallback chain (None = platform sans-serif).

§weight: u16

CSS font-weight (1-1000; 400 = normal).

§line_height_px: f32

Resolved CSS line-height in logical pixels (already resolved against Self::size_px via resolve_line_height). Drives inter-line spacing in the shaper and the newline-caret math.

§caret_width_px: f32

Resolved text-input caret stroke width in logical pixels (already resolved against CARET_WIDTH_PX or a CaretWidth override).

Trait Implementations§

Source§

impl Clone for ExtractedText

Source§

fn clone(&self) -> ExtractedText

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 Component for ExtractedText
where Self: Send + Sync + 'static,

Source§

const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table

A constant indicating the storage type used for this component.
Source§

type Mutability = Mutable

A marker type to assist Bevy with determining if this component is mutable, or immutable. Mutable components will have Component<Mutability = Mutable>, while immutable components will instead have Component<Mutability = Immutable>. Read more
Source§

fn register_required_components( _requiree: ComponentId, required_components: &mut RequiredComponentsRegistrator<'_, '_>, )

Registers required components. Read more
Source§

fn clone_behavior() -> ComponentCloneBehavior

Called when registering this component, allowing to override clone function (or disable cloning altogether) for this component. Read more
Source§

fn relationship_accessor() -> Option<ComponentRelationshipAccessor<Self>>

Returns [ComponentRelationshipAccessor] required for working with relationships in dynamic contexts. Read more
§

fn on_add() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>

Gets the on_add [ComponentHook] for this Component if one is defined.
§

fn on_insert() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>

Gets the on_insert [ComponentHook] for this Component if one is defined.
§

fn on_discard() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>

Gets the on_discard [ComponentHook] for this Component if one is defined.
§

fn on_remove() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>

Gets the on_remove [ComponentHook] for this Component if one is defined.
§

fn on_despawn() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>

Gets the on_despawn [ComponentHook] for this Component if one is defined.
§

fn map_entities<E>(_this: &mut Self, _mapper: &mut E)
where E: EntityMapper,

Maps the entities on this component using the given EntityMapper. This is used to remap entities in contexts like scenes and entity cloning. When deriving Component, this is populated by annotating fields containing entities with #[entities] Read more
Source§

impl Debug for ExtractedText

Source§

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

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

impl From<&ExtractedText> for Node

Source§

fn from(t: &ExtractedText) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for ExtractedText

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ExtractedText

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
§

impl<C> Bundle for C
where C: Component,

§

fn component_ids( components: &mut ComponentsRegistrator<'_>, ) -> impl Iterator<Item = ComponentId> + use<C>

§

fn get_component_ids( components: &Components, ) -> impl Iterator<Item = Option<ComponentId>>

Return a iterator over this Bundle’s component ids. This will be None if the component has not been registered.
§

impl<C> BundleFromComponents for C
where C: Component,

§

unsafe fn from_components<T, F>(ctx: &mut T, func: &mut F) -> C
where F: for<'a> FnMut(&'a mut T) -> OwningPtr<'a>,

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
§

impl<C> DynamicBundle for C
where C: Component,

§

type Effect = ()

An operation on the entity that happens after inserting this bundle.
§

unsafe fn get_components( ptr: MovingPtr<'_, C>, func: &mut impl FnMut(StorageType, OwningPtr<'_>), ) -> <C as DynamicBundle>::Effect

Moves the components out of the bundle. Read more
§

unsafe fn apply_effect( _ptr: MovingPtr<'_, MaybeUninit<C>>, _entity: &mut EntityWorldMut<'_>, )

Applies the after-effects of spawning this bundle. 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.

§

impl<T> IntoResult<T> for T

§

fn into_result(self) -> Result<T, RunSystemError>

Converts this type into the system output type.
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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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

impl<T> ConditionalSend for T
where T: Send,