diff options
Diffstat (limited to 'graphics/src')
| -rw-r--r-- | graphics/src/backend.rs | 5 | ||||
| -rw-r--r-- | graphics/src/renderer.rs | 5 | 
2 files changed, 10 insertions, 0 deletions
diff --git a/graphics/src/backend.rs b/graphics/src/backend.rs index 7bbdee95..8658cffe 100644 --- a/graphics/src/backend.rs +++ b/graphics/src/backend.rs @@ -4,6 +4,8 @@ use iced_native::svg;  use iced_native::text;  use iced_native::{Font, Point, Size}; +use std::borrow::Cow; +  /// The graphics backend of a [`Renderer`].  ///  /// [`Renderer`]: crate::Renderer @@ -64,6 +66,9 @@ pub trait Text {          point: Point,          nearest_only: bool,      ) -> Option<text::Hit>; + +    /// Loads a [`Font`] from its bytes. +    fn load_font(&mut self, font: Cow<'static, [u8]>);  }  /// A graphics backend that supports image rendering. diff --git a/graphics/src/renderer.rs b/graphics/src/renderer.rs index 7ad53dec..b052c094 100644 --- a/graphics/src/renderer.rs +++ b/graphics/src/renderer.rs @@ -10,6 +10,7 @@ use iced_native::{Background, Color, Element, Font, Point, Rectangle, Size};  pub use iced_native::renderer::Style; +use std::borrow::Cow;  use std::marker::PhantomData;  /// A backend-agnostic renderer that supports all the built-in widgets. @@ -167,6 +168,10 @@ where          )      } +    fn load_font(&mut self, bytes: Cow<'static, [u8]>) { +        self.backend.load_font(bytes); +    } +      fn fill_text(&mut self, text: Text<'_, Self::Font>) {          self.primitives.push(Primitive::Text {              content: text.content.to_string(),  | 
