pub struct FontDefinitions {
pub font_data: BTreeMap<String, Arc<FontData>>,
pub families: BTreeMap<FontFamily, Vec<String>>,
}
Expand description
Describes the font data and the sizes to use.
Often you would start with FontDefinitions::default()
and then add/change the contents.
This is how you install your own custom fonts:
let mut fonts = FontDefinitions::default();
// Install my own font (maybe supporting non-latin characters):
fonts.font_data.insert("my_font".to_owned(),
std::sync::Arc::new(
// .ttf and .otf supported
FontData::from_static(include_bytes!("../../../epaint_default_fonts/fonts/Ubuntu-Light.ttf"))
)
);
// Put my font first (highest priority):
fonts.families.get_mut(&FontFamily::Proportional).unwrap()
.insert(0, "my_font".to_owned());
// Put my font as last fallback for monospace:
fonts.families.get_mut(&FontFamily::Monospace).unwrap()
.push("my_font".to_owned());
egui_ctx.set_fonts(fonts);
Fields§
§font_data: BTreeMap<String, Arc<FontData>>
List of font names and their definitions.
epaint
has built-in-default for these, but you can override them if you like.
families: BTreeMap<FontFamily, Vec<String>>
Which fonts (names) to use for each FontFamily
.
The list should be a list of keys into Self::font_data
.
When looking for a character glyph epaint
will start with
the first font and then move to the second, and so on.
So the first font is the primary, and then comes a list of fallbacks in order of priority.
Implementations§
Source§impl FontDefinitions
impl FontDefinitions
Sourcepub fn empty() -> FontDefinitions
pub fn empty() -> FontDefinitions
No fonts.
Sourcepub fn builtin_font_names() -> &'static [&'static str]
pub fn builtin_font_names() -> &'static [&'static str]
List of all the builtin font names used by epaint
.
Trait Implementations§
Source§impl Clone for FontDefinitions
impl Clone for FontDefinitions
Source§fn clone(&self) -> FontDefinitions
fn clone(&self) -> FontDefinitions
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for FontDefinitions
impl Debug for FontDefinitions
Source§impl Default for FontDefinitions
impl Default for FontDefinitions
Source§fn default() -> FontDefinitions
fn default() -> FontDefinitions
Specifies the default fonts if the feature default_fonts
is enabled,
otherwise this is the same as Self::empty
.
Source§impl<'de> Deserialize<'de> for FontDefinitionswhere
FontDefinitions: Default,
impl<'de> Deserialize<'de> for FontDefinitionswhere
FontDefinitions: Default,
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<FontDefinitions, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<FontDefinitions, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for FontDefinitions
impl PartialEq for FontDefinitions
Source§impl Serialize for FontDefinitions
impl Serialize for FontDefinitions
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for FontDefinitions
Auto Trait Implementations§
impl Freeze for FontDefinitions
impl RefUnwindSafe for FontDefinitions
impl Send for FontDefinitions
impl Sync for FontDefinitions
impl Unpin for FontDefinitions
impl UnwindSafe for FontDefinitions
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<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 more