Fonts

Struct Fonts 

Source
pub struct Fonts {
    pub fonts: FontsImpl,
    galley_cache: GalleyCache,
}
Expand description

The collection of fonts used by epaint.

Required in order to paint text. Create one and reuse. Cheap to clone.

Each Fonts comes with a font atlas textures that needs to be used when painting.

If you are using egui, use egui::Context::set_fonts and egui::Context::fonts.

You need to call Self::begin_pass and Self::font_image_delta once every frame.

Fields§

§fonts: FontsImpl§galley_cache: GalleyCache

Implementations§

Source§

impl Fonts

Source

pub fn new(options: TextOptions, definitions: FontDefinitions) -> Fonts

Create a new Fonts for text layout. This call is expensive, so only create one Fonts and then reuse it.

Source

pub fn begin_pass(&mut self, options: TextOptions)

Call at the start of each frame with the latest known TextOptions.

Call after painting the previous frame, but before using Fonts for the new frame.

This function will react to changes in TextOptions, as well as notice when the font atlas is getting full, and handle that.

Source

pub fn font_image_delta(&mut self) -> Option<ImageDelta>

Call at the end of each frame (before painting) to get the change to the font texture since last call.

Source

pub fn options(&self) -> &TextOptions

Source

pub fn definitions(&self) -> &FontDefinitions

Source

pub fn texture_atlas(&self) -> &TextureAtlas

The font atlas. Pass this to crate::Tessellator.

Source

pub fn image(&self) -> ColorImage

The full font atlas image.

Source

pub fn font_image_size(&self) -> [usize; 2]

Current size of the font image. Pass this to crate::Tessellator.

Source

pub fn has_glyph(&mut self, font_id: &FontId, c: char) -> bool

Can we display this glyph?

Source

pub fn has_glyphs(&mut self, font_id: &FontId, s: &str) -> bool

Can we display all the glyphs in this text?

Source

pub fn num_galleys_in_cache(&self) -> usize

Source

pub fn font_atlas_fill_ratio(&self) -> f32

How full is the font atlas?

This increases as new fonts and/or glyphs are used, but can also decrease in a call to Self::begin_pass.

Source

pub fn with_pixels_per_point(&mut self, pixels_per_point: f32) -> FontsView<'_>

Returns a FontsView with the given pixels_per_point that can be used to do text layout.

Auto Trait Implementations§

§

impl Freeze for Fonts

§

impl !RefUnwindSafe for Fonts

§

impl Send for Fonts

§

impl Sync for Fonts

§

impl Unpin for Fonts

§

impl !UnwindSafe for Fonts

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> 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, S> SimdFrom<T, S> for T
where S: Simd,

Source§

fn simd_from(value: T, _simd: S) -> T

Source§

impl<F, T, S> SimdInto<T, S> for F
where T: SimdFrom<F, S>, S: Simd,

Source§

fn simd_into(self, simd: S) -> T

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.