Struct egui::widget_text::RichText

source ·
pub struct RichText {
Show 15 fields text: String, size: Option<f32>, extra_letter_spacing: f32, line_height: Option<f32>, family: Option<FontFamily>, text_style: Option<TextStyle>, background_color: Color32, text_color: Option<Color32>, code: bool, strong: bool, weak: bool, strikethrough: bool, underline: bool, italics: bool, raised: bool,
}
Expand description

Text and optional style choices for it.

The style choices (font, color) are applied to the entire text. For more detailed control, use crate::text::LayoutJob instead.

A RichText can be used in most widgets and helper functions, e.g. Ui::label and Ui::button.

§Example

use egui::{RichText, Color32};

RichText::new("Plain");
RichText::new("colored").color(Color32::RED);
RichText::new("Large and underlined").size(20.0).underline();

Fields§

§text: String§size: Option<f32>§extra_letter_spacing: f32§line_height: Option<f32>§family: Option<FontFamily>§text_style: Option<TextStyle>§background_color: Color32§text_color: Option<Color32>§code: bool§strong: bool§weak: bool§strikethrough: bool§underline: bool§italics: bool§raised: bool

Implementations§

source§

impl RichText

source

pub fn new(text: impl Into<String>) -> Self

source

pub fn is_empty(&self) -> bool

source

pub fn text(&self) -> &str

source

pub fn size(self, size: f32) -> Self

Select the font size (in points). This overrides the value from Self::text_style.

source

pub fn extra_letter_spacing(self, extra_letter_spacing: f32) -> Self

Extra spacing between letters, in points.

Default: 0.0.

For even text it is recommended you round this to an even number of pixels, e.g. using crate::Painter::round_to_pixel.

source

pub fn line_height(self, line_height: Option<f32>) -> Self

Explicit line height of the text in points.

This is the distance between the bottom row of two subsequent lines of text.

If None (the default), the line height is determined by the font.

For even text it is recommended you round this to an even number of pixels, e.g. using crate::Painter::round_to_pixel.

source

pub fn family(self, family: FontFamily) -> Self

Select the font family.

This overrides the value from Self::text_style.

Only the families available in crate::FontDefinitions::families may be used.

source

pub fn font(self, font_id: FontId) -> Self

Select the font and size. This overrides the value from Self::text_style.

source

pub fn text_style(self, text_style: TextStyle) -> Self

Override the TextStyle.

source

pub fn fallback_text_style(self, text_style: TextStyle) -> Self

Set the TextStyle unless it has already been set

source

pub fn heading(self) -> Self

source

pub fn monospace(self) -> Self

source

pub fn code(self) -> Self

Monospace label with different background color.

source

pub fn strong(self) -> Self

Extra strong text (stronger color).

source

pub fn weak(self) -> Self

Extra weak text (fainter color).

source

pub fn underline(self) -> Self

Draw a line under the text.

If you want to control the line color, use LayoutJob instead.

source

pub fn strikethrough(self) -> Self

Draw a line through the text, crossing it out.

If you want to control the strikethrough line color, use LayoutJob instead.

source

pub fn italics(self) -> Self

Tilt the characters to the right.

source

pub fn small(self) -> Self

Smaller text.

source

pub fn small_raised(self) -> Self

For e.g. exponents.

source

pub fn raised(self) -> Self

Align text to top. Only applicable together with Self::small().

source

pub fn background_color(self, background_color: impl Into<Color32>) -> Self

Fill-color behind the text.

source

pub fn color(self, color: impl Into<Color32>) -> Self

Override text color.

If not set, Color32::PLACEHOLDER will be used, which will be replaced with a color chosen by the widget that paints the text.

source

pub fn font_height(&self, fonts: &Fonts, style: &Style) -> f32

Read the font height of the selected text style.

source

pub fn append_to( self, layout_job: &mut LayoutJob, style: &Style, fallback_font: FontSelection, default_valign: Align, )

Append to an existing LayoutJob

Note that the color of the RichText must be set, or may default to an undesirable color.

§Example
use egui::{Style, RichText, text::LayoutJob, Color32, FontSelection, Align};

let style = Style::default();
let mut layout_job = LayoutJob::default();
RichText::new("Normal")
    .color(style.visuals.text_color())
    .append_to(
        &mut layout_job,
        &style,
        FontSelection::Default,
        Align::Center,
    );
RichText::new("Large and underlined")
    .color(style.visuals.text_color())
    .size(20.0)
    .underline()
    .append_to(
        &mut layout_job,
        &style,
        FontSelection::Default,
        Align::Center,
    );
source

fn into_layout_job( self, style: &Style, fallback_font: FontSelection, default_valign: Align, ) -> LayoutJob

source

fn into_text_and_format( self, style: &Style, fallback_font: FontSelection, default_valign: Align, ) -> (String, TextFormat)

source

fn get_text_color(&self, visuals: &Visuals) -> Option<Color32>

Trait Implementations§

source§

impl Clone for RichText

source§

fn clone(&self) -> RichText

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Default for RichText

source§

fn default() -> RichText

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

impl From<&Box<str>> for RichText

source§

fn from(text: &Box<str>) -> Self

Converts to this type from the input type.
source§

impl From<&String> for RichText

source§

fn from(text: &String) -> Self

Converts to this type from the input type.
source§

impl From<&mut Box<str>> for RichText

source§

fn from(text: &mut Box<str>) -> Self

Converts to this type from the input type.
source§

impl From<&mut String> for RichText

source§

fn from(text: &mut String) -> Self

Converts to this type from the input type.
source§

impl From<&str> for RichText

source§

fn from(text: &str) -> Self

Converts to this type from the input type.
source§

impl From<Box<str>> for RichText

source§

fn from(text: Box<str>) -> Self

Converts to this type from the input type.
source§

impl From<Cow<'_, str>> for RichText

source§

fn from(text: Cow<'_, str>) -> Self

Converts to this type from the input type.
source§

impl From<RichText> for WidgetText

source§

fn from(rich_text: RichText) -> Self

Converts to this type from the input type.
source§

impl From<String> for RichText

source§

fn from(text: String) -> Self

Converts to this type from the input type.
source§

impl PartialEq for RichText

source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · 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 RichText

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, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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.
source§

impl<T> SerializableAny for T
where T: 'static + Any + Clone + for<'a> Send + Sync,