Move built-in fonts to `iced_graphics`
This commit is contained in:
parent
e0c4f1a08e
commit
f0480854a9
|
@ -23,7 +23,7 @@ path = "../native"
|
|||
[dependencies.iced_graphics]
|
||||
version = "0.1"
|
||||
path = "../graphics"
|
||||
features = ["font-source"]
|
||||
features = ["font-source", "font-fallback", "font-icons"]
|
||||
|
||||
[dependencies.surfman]
|
||||
path = "../../surfman/surfman"
|
||||
|
|
|
@ -3,6 +3,7 @@ use crate::text;
|
|||
use crate::triangle;
|
||||
use crate::{Quad, Settings, Transformation, Viewport};
|
||||
use iced_graphics::backend;
|
||||
use iced_graphics::font;
|
||||
use iced_graphics::Primitive;
|
||||
use iced_native::mouse;
|
||||
use iced_native::{Background, Font, Point, Rectangle, Size, Vector};
|
||||
|
@ -404,8 +405,8 @@ impl iced_graphics::Backend for Backend {
|
|||
}
|
||||
|
||||
impl backend::Text for Backend {
|
||||
const ICON_FONT: Font = text::BUILTIN_ICONS;
|
||||
const CHECKMARK_ICON: char = text::CHECKMARK_ICON;
|
||||
const ICON_FONT: Font = font::ICONS;
|
||||
const CHECKMARK_ICON: char = font::CHECKMARK_ICON;
|
||||
|
||||
fn measure(
|
||||
&self,
|
||||
|
|
|
@ -2,16 +2,6 @@ use crate::Transformation;
|
|||
use iced_graphics::font;
|
||||
use std::{cell::RefCell, collections::HashMap};
|
||||
|
||||
pub const BUILTIN_ICONS: iced_native::Font = iced_native::Font::External {
|
||||
name: "iced_glow icons",
|
||||
bytes: include_bytes!("text/icons.ttf"),
|
||||
};
|
||||
|
||||
pub const CHECKMARK_ICON: char = '\u{F00C}';
|
||||
|
||||
const FALLBACK_FONT: &[u8] =
|
||||
include_bytes!("../../wgpu/fonts/Lato-Regular.ttf");
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct Pipeline {
|
||||
draw_brush: RefCell<glow_glyph::GlyphBrush<'static>>,
|
||||
|
@ -29,7 +19,7 @@ impl Pipeline {
|
|||
default_font.map(|slice| slice.to_vec()).unwrap_or_else(|| {
|
||||
font_source
|
||||
.load(&[font::Family::SansSerif, font::Family::Serif])
|
||||
.unwrap_or_else(|_| FALLBACK_FONT.to_vec())
|
||||
.unwrap_or_else(|_| font::FALLBACK.to_vec())
|
||||
});
|
||||
|
||||
let load_glyph_brush = |font: Vec<u8>| {
|
||||
|
@ -48,7 +38,7 @@ impl Pipeline {
|
|||
.unwrap_or_else(|_: glow_glyph::rusttype::Error| {
|
||||
log::warn!("System font failed to load. Falling back to embedded font...");
|
||||
|
||||
load_glyph_brush(FALLBACK_FONT.to_vec()).expect("Load fallback font")
|
||||
load_glyph_brush(font::FALLBACK.to_vec()).expect("Load fallback font")
|
||||
});
|
||||
|
||||
let draw_brush =
|
||||
|
|
|
@ -7,6 +7,8 @@ edition = "2018"
|
|||
[features]
|
||||
canvas = ["lyon"]
|
||||
font-source = ["font-kit"]
|
||||
font-fallback = []
|
||||
font-icons = []
|
||||
|
||||
[dependencies]
|
||||
bytemuck = "1.2"
|
||||
|
|
|
@ -8,3 +8,15 @@ pub use source::Source;
|
|||
pub use font_kit::{
|
||||
error::SelectionError as LoadError, family_name::FamilyName as Family,
|
||||
};
|
||||
|
||||
#[cfg(feature = "font-fallback")]
|
||||
pub const FALLBACK: &[u8] = include_bytes!("../fonts/Lato-Regular.ttf");
|
||||
|
||||
#[cfg(feature = "font-icons")]
|
||||
pub const ICONS: iced_native::Font = iced_native::Font::External {
|
||||
name: "iced_wgpu icons",
|
||||
bytes: include_bytes!("../fonts/Icons.ttf"),
|
||||
};
|
||||
|
||||
#[cfg(feature = "font-icons")]
|
||||
pub const CHECKMARK_ICON: char = '\u{F00C}';
|
||||
|
|
|
@ -32,7 +32,7 @@ path = "../native"
|
|||
[dependencies.iced_graphics]
|
||||
version = "0.1"
|
||||
path = "../graphics"
|
||||
features = ["font-source"]
|
||||
features = ["font-source", "font-fallback", "font-icons"]
|
||||
|
||||
[dependencies.image]
|
||||
version = "0.23"
|
||||
|
|
|
@ -3,6 +3,7 @@ use crate::text;
|
|||
use crate::triangle;
|
||||
use crate::{Quad, Settings, Target, Transformation};
|
||||
use iced_graphics::backend;
|
||||
use iced_graphics::font;
|
||||
use iced_graphics::Primitive;
|
||||
use iced_native::mouse;
|
||||
use iced_native::{Background, Font, Point, Rectangle, Size, Vector};
|
||||
|
@ -456,8 +457,8 @@ impl iced_graphics::Backend for Backend {
|
|||
}
|
||||
|
||||
impl backend::Text for Backend {
|
||||
const ICON_FONT: Font = text::BUILTIN_ICONS;
|
||||
const CHECKMARK_ICON: char = text::CHECKMARK_ICON;
|
||||
const ICON_FONT: Font = font::ICONS;
|
||||
const CHECKMARK_ICON: char = font::CHECKMARK_ICON;
|
||||
|
||||
fn measure(
|
||||
&self,
|
||||
|
|
|
@ -2,15 +2,6 @@ use crate::Transformation;
|
|||
use iced_graphics::font;
|
||||
use std::{cell::RefCell, collections::HashMap};
|
||||
|
||||
pub const BUILTIN_ICONS: iced_native::Font = iced_native::Font::External {
|
||||
name: "iced_wgpu icons",
|
||||
bytes: include_bytes!("text/icons.ttf"),
|
||||
};
|
||||
|
||||
pub const CHECKMARK_ICON: char = '\u{F00C}';
|
||||
|
||||
const FALLBACK_FONT: &[u8] = include_bytes!("../fonts/Lato-Regular.ttf");
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct Pipeline {
|
||||
draw_brush: RefCell<wgpu_glyph::GlyphBrush<'static, ()>>,
|
||||
|
@ -32,7 +23,7 @@ impl Pipeline {
|
|||
default_font.map(|slice| slice.to_vec()).unwrap_or_else(|| {
|
||||
font_source
|
||||
.load(&[font::Family::SansSerif, font::Family::Serif])
|
||||
.unwrap_or_else(|_| FALLBACK_FONT.to_vec())
|
||||
.unwrap_or_else(|_| font::FALLBACK.to_vec())
|
||||
});
|
||||
|
||||
let load_glyph_brush = |font: Vec<u8>| {
|
||||
|
@ -51,7 +42,7 @@ impl Pipeline {
|
|||
.unwrap_or_else(|_: wgpu_glyph::rusttype::Error| {
|
||||
log::warn!("System font failed to load. Falling back to embedded font...");
|
||||
|
||||
load_glyph_brush(FALLBACK_FONT.to_vec()).expect("Load fallback font")
|
||||
load_glyph_brush(font::FALLBACK.to_vec()).expect("Load fallback font")
|
||||
});
|
||||
|
||||
let draw_brush = brush_builder
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue