pub struct TextStyle {Show 17 fields
pub color: Hsla,
pub font_family: SharedString,
pub font_features: FontFeatures,
pub font_fallbacks: Option<FontFallbacks>,
pub font_size: AbsoluteLength,
pub line_height: DefiniteLength,
pub font_weight: FontWeight,
pub font_style: FontStyle,
pub background_color: Option<Hsla>,
pub underline: Option<UnderlineStyle>,
pub strikethrough: Option<StrikethroughStyle>,
pub white_space: WhiteSpace,
pub text_overflow: Option<TextOverflow>,
pub text_align: TextAlign,
pub line_clamp: Option<usize>,
pub letter_spacing: Option<Pixels>,
pub text_transform: Option<TextTransform>,
}Expand description
The properties that can be used to style text in GPUI
Fields§
§color: HslaThe color of the text
font_family: SharedStringThe font family to use
font_features: FontFeaturesThe font features to use
font_fallbacks: Option<FontFallbacks>The fallback fonts to use
font_size: AbsoluteLengthThe font size to use, in pixels or rems.
line_height: DefiniteLengthThe line height to use, in pixels or fractions
font_weight: FontWeightThe font weight, e.g. bold
font_style: FontStyleThe font style, e.g. italic
background_color: Option<Hsla>The background color of the text
underline: Option<UnderlineStyle>The underline style of the text
strikethrough: Option<StrikethroughStyle>The strikethrough style of the text
white_space: WhiteSpaceHow to handle whitespace in the text
text_overflow: Option<TextOverflow>The text should be truncated if it overflows the width of the element
text_align: TextAlignHow the text should be aligned within the element
line_clamp: Option<usize>The number of lines to display before truncating the text
letter_spacing: Option<Pixels>Letter spacing added between characters, in pixels (positive widens, negative tightens).
The platform text stack may clamp values outside the range it supports.
text_transform: Option<TextTransform>Case transformation applied at layout time.
Implementations§
Trait Implementations§
Source§impl From<&TextStyle> for HighlightStyle
impl From<&TextStyle> for HighlightStyle
Source§impl From<TextStyle> for HighlightStyle
impl From<TextStyle> for HighlightStyle
Source§impl From<TextStyleRefinement> for TextStylewhere
Option<Hsla>: Clone,
Option<SharedString>: Clone,
Option<FontFeatures>: Clone,
Option<FontFallbacks>: Clone,
Option<AbsoluteLength>: Clone,
Option<DefiniteLength>: Clone,
Option<FontWeight>: Clone,
Option<FontStyle>: Clone,
Option<UnderlineStyle>: Clone,
Option<StrikethroughStyle>: Clone,
Option<WhiteSpace>: Clone,
Option<TextOverflow>: Clone,
Option<TextAlign>: Clone,
Option<usize>: Clone,
Option<Pixels>: Clone,
Option<TextTransform>: Clone,
impl From<TextStyleRefinement> for TextStylewhere
Option<Hsla>: Clone,
Option<SharedString>: Clone,
Option<FontFeatures>: Clone,
Option<FontFallbacks>: Clone,
Option<AbsoluteLength>: Clone,
Option<DefiniteLength>: Clone,
Option<FontWeight>: Clone,
Option<FontStyle>: Clone,
Option<UnderlineStyle>: Clone,
Option<StrikethroughStyle>: Clone,
Option<WhiteSpace>: Clone,
Option<TextOverflow>: Clone,
Option<TextAlign>: Clone,
Option<usize>: Clone,
Option<Pixels>: Clone,
Option<TextTransform>: Clone,
Source§fn from(value: TextStyleRefinement) -> Self
fn from(value: TextStyleRefinement) -> Self
Source§impl Refineable for TextStylewhere
Option<Hsla>: Clone,
Option<SharedString>: Clone,
Option<FontFeatures>: Clone,
Option<FontFallbacks>: Clone,
Option<AbsoluteLength>: Clone,
Option<DefiniteLength>: Clone,
Option<FontWeight>: Clone,
Option<FontStyle>: Clone,
Option<UnderlineStyle>: Clone,
Option<StrikethroughStyle>: Clone,
Option<WhiteSpace>: Clone,
Option<TextOverflow>: Clone,
Option<TextAlign>: Clone,
Option<usize>: Clone,
Option<Pixels>: Clone,
Option<TextTransform>: Clone,
impl Refineable for TextStylewhere
Option<Hsla>: Clone,
Option<SharedString>: Clone,
Option<FontFeatures>: Clone,
Option<FontFallbacks>: Clone,
Option<AbsoluteLength>: Clone,
Option<DefiniteLength>: Clone,
Option<FontWeight>: Clone,
Option<FontStyle>: Clone,
Option<UnderlineStyle>: Clone,
Option<StrikethroughStyle>: Clone,
Option<WhiteSpace>: Clone,
Option<TextOverflow>: Clone,
Option<TextAlign>: Clone,
Option<usize>: Clone,
Option<Pixels>: Clone,
Option<TextTransform>: Clone,
type Refinement = TextStyleRefinement
Source§fn refine(&mut self, refinement: &Self::Refinement)
fn refine(&mut self, refinement: &Self::Refinement)
Source§fn refined(self, refinement: Self::Refinement) -> Self
fn refined(self, refinement: Self::Refinement) -> Self
self and calling
refine on it.Source§fn is_superset_of(&self, refinement: &Self::Refinement) -> bool
fn is_superset_of(&self, refinement: &Self::Refinement) -> bool
true if this instance would contain all values from the refinement. Read moreSource§fn subtract(&self, refinement: &Self::Refinement) -> Self::Refinement
fn subtract(&self, refinement: &Self::Refinement) -> Self::Refinement
impl StructuralPartialEq for TextStyle
Auto Trait Implementations§
impl Freeze for TextStyle
impl RefUnwindSafe for TextStyle
impl Send for TextStyle
impl Sync for TextStyle
impl Unpin for TextStyle
impl UnsafeUnpin for TextStyle
impl UnwindSafe for TextStyle
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
replaced by palette::chromatic_adaptation::AdaptIntoUnclamped
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
replaced by palette::chromatic_adaptation::AdaptIntoUnclamped
Source§impl<T, C> AdaptIntoUnclamped<T> for Cwhere
T: AdaptFromUnclamped<C>,
impl<T, C> AdaptIntoUnclamped<T> for Cwhere
T: AdaptFromUnclamped<C>,
Source§type Scalar = <T as AdaptFromUnclamped<C>>::Scalar
type Scalar = <T as AdaptFromUnclamped<C>>::Scalar
Source§fn adapt_into_unclamped_with<M>(self) -> Twhere
M: LmsToXyz<<C as AdaptIntoUnclamped<T>>::Scalar> + XyzToLms<<C as AdaptIntoUnclamped<T>>::Scalar>,
fn adapt_into_unclamped_with<M>(self) -> Twhere
M: LmsToXyz<<C as AdaptIntoUnclamped<T>>::Scalar> + XyzToLms<<C as AdaptIntoUnclamped<T>>::Scalar>,
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
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<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T, C> ComponentsInto<C> for T
impl<T, C> ComponentsInto<C> for T
Source§fn components_into(self) -> C
fn components_into(self) -> C
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.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> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
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