Skip to main content

TextStyle

Struct TextStyle 

Source
pub struct TextStyle {
Show 17 fields pub family: String, pub fallback_families: Vec<String>, pub font_size: f32, pub weight: Weight, pub stretch: Stretch, pub style: Style, pub color: [u8; 4], pub letter_spacing: f32, pub word_spacing: f32, pub line_height: LineHeight, pub decorations: TextDecorations, pub extra_features: Vec<OpenTypeFeature>, pub variable_axes: Vec<VariableAxis>, pub synthesize_styles: bool, pub render_mode: RenderMode, pub outline_rendering: bool, pub material_effect_id: u32,
}
Expand description

Complete text styling for a span of text.

Fields§

§family: String

Font family name (primary).

§fallback_families: Vec<String>

Fallback font family names.

§font_size: f32

Font size in pixels.

§weight: Weight

Font weight (100-900).

§stretch: Stretch

Font stretch.

§style: Style

Font style (normal, italic, oblique).

§color: [u8; 4]

Text color as RGBA.

§letter_spacing: f32

Letter spacing in pixels (added to each glyph advance).

§word_spacing: f32

Word spacing in pixels (added to space glyph advance).

§line_height: LineHeight

Line height mode.

§decorations: TextDecorations

Text decorations.

§extra_features: Vec<OpenTypeFeature>

OpenType features to enable (after liga/kern/calt which are always on).

§variable_axes: Vec<VariableAxis>

Variable font axis settings.

§synthesize_styles: bool

Whether to synthesize bold/italic when the variant font is missing.

§render_mode: RenderMode

Rendering mode for glyph rasterization.

§outline_rendering: bool

Whether to render glyphs as resolution-independent vector outlines.

§material_effect_id: u32

Unique identifier for dynamic material and visual rendering effects.

Implementations§

Source§

impl TextStyle

Source

pub fn new(family: &str, font_size: f32) -> Self

Create a new text style with the given family and size.

Source

pub fn with_weight(self, weight: u16) -> Self

Set the font weight.

Source

pub fn italic(self) -> Self

Set italic style.

Source

pub fn with_color(self, r: u8, g: u8, b: u8, a: u8) -> Self

Set the text color.

Source

pub fn with_letter_spacing(self, spacing: f32) -> Self

Set letter spacing.

Source

pub fn with_word_spacing(self, spacing: f32) -> Self

Set word spacing.

Source

pub fn with_line_height_multiple(self, multiple: f32) -> Self

Set line height as a multiple of font size.

Source

pub fn with_line_height_fixed(self, pixels: f32) -> Self

Set a fixed line height in pixels.

Source

pub fn with_feature(self, feature: OpenTypeFeature) -> Self

Add an OpenType feature.

Source

pub fn with_axis(self, axis: VariableAxis) -> Self

Add a variable font axis.

Source

pub fn with_underline(self) -> Self

Enable underline decoration.

Source

pub fn with_strikethrough(self) -> Self

Enable strikethrough decoration.

Source

pub fn with_outline_rendering(self, enabled: bool) -> Self

Set whether outline vector path rendering is enabled.

Source

pub fn with_material_effect(self, effect_id: u32) -> Self

Set the material effect ID for dynamic visual rendering.

Trait Implementations§

Source§

impl Clone for TextStyle

Source§

fn clone(&self) -> TextStyle

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 TextStyle

Source§

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

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

impl Default for TextStyle

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for TextStyle

Source§

fn eq(&self, other: &TextStyle) -> 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 TextStyle

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