pub struct RichText { /* private fields */ }
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();
Implementations§
Source§impl RichText
impl RichText
pub fn new(text: impl Into<String>) -> RichText
pub fn is_empty(&self) -> bool
pub fn text(&self) -> &str
Sourcepub fn size(self, size: f32) -> RichText
pub fn size(self, size: f32) -> RichText
Select the font size (in points).
This overrides the value from Self::text_style
.
Sourcepub fn extra_letter_spacing(self, extra_letter_spacing: f32) -> RichText
pub fn extra_letter_spacing(self, extra_letter_spacing: f32) -> RichText
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
.
Sourcepub fn line_height(self, line_height: Option<f32>) -> RichText
pub fn line_height(self, line_height: Option<f32>) -> RichText
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
.
Sourcepub fn family(self, family: FontFamily) -> RichText
pub fn family(self, family: FontFamily) -> RichText
Select the font family.
This overrides the value from Self::text_style
.
Only the families available in crate::FontDefinitions::families
may be used.
Sourcepub fn font(self, font_id: FontId) -> RichText
pub fn font(self, font_id: FontId) -> RichText
Select the font and size.
This overrides the value from Self::text_style
.
Sourcepub fn text_style(self, text_style: TextStyle) -> RichText
pub fn text_style(self, text_style: TextStyle) -> RichText
Override the TextStyle
.
Sourcepub fn fallback_text_style(self, text_style: TextStyle) -> RichText
pub fn fallback_text_style(self, text_style: TextStyle) -> RichText
Set the TextStyle
unless it has already been set
Sourcepub fn heading(self) -> RichText
pub fn heading(self) -> RichText
Use TextStyle::Heading
.
Sourcepub fn monospace(self) -> RichText
pub fn monospace(self) -> RichText
Use TextStyle::Monospace
.
Sourcepub fn underline(self) -> RichText
pub fn underline(self) -> RichText
Draw a line under the text.
If you want to control the line color, use LayoutJob
instead.
Sourcepub fn strikethrough(self) -> RichText
pub fn strikethrough(self) -> RichText
Draw a line through the text, crossing it out.
If you want to control the strikethrough line color, use LayoutJob
instead.
Sourcepub fn small_raised(self) -> RichText
pub fn small_raised(self) -> RichText
For e.g. exponents.
Sourcepub fn raised(self) -> RichText
pub fn raised(self) -> RichText
Align text to top. Only applicable together with Self::small()
.
Sourcepub fn background_color(self, background_color: impl Into<Color32>) -> RichText
pub fn background_color(self, background_color: impl Into<Color32>) -> RichText
Fill-color behind the text.
Sourcepub fn font_height(&self, fonts: &Fonts, style: &Style) -> f32
pub fn font_height(&self, fonts: &Fonts, style: &Style) -> f32
Read the font height of the selected text style.
Sourcepub fn append_to(
self,
layout_job: &mut LayoutJob,
style: &Style,
fallback_font: FontSelection,
default_valign: Align,
)
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,
);
Trait Implementations§
Source§impl From<RichText> for WidgetText
impl From<RichText> for WidgetText
Source§fn from(rich_text: RichText) -> WidgetText
fn from(rich_text: RichText) -> WidgetText
impl StructuralPartialEq for RichText
Auto Trait Implementations§
impl Freeze for RichText
impl RefUnwindSafe for RichText
impl Send for RichText
impl Sync for RichText
impl Unpin for RichText
impl UnwindSafe for RichText
Blanket Implementations§
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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pointable for T
impl<T> Pointable for T
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<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.