changes in serialization of data
This commit is contained in:
59
build.rs
59
build.rs
@@ -1,11 +1,64 @@
|
||||
use std::{
|
||||
collections::BTreeMap,
|
||||
fs::File,
|
||||
io::{BufWriter, Write},
|
||||
};
|
||||
|
||||
use epaint::{
|
||||
text::{FontData, FontDefinitions},
|
||||
FontFamily,
|
||||
};
|
||||
|
||||
fn main() {
|
||||
// rebuild if new commit or contents of `assets` folder changed
|
||||
println!("cargo:rerun-if-changed=.git/logs/HEAD");
|
||||
println!("cargo:rerun-if-changed=assets/*");
|
||||
|
||||
let _ = command_run::Command::with_args("./pack_assets.sh", &[""])
|
||||
shadow_rs::new().expect("Could not initialize shadow_rs");
|
||||
|
||||
let font_hack = FontData::from_static(include_bytes!("assets/Hack-Regular.ttf"));
|
||||
let font_ubuntu_light = FontData::from_static(include_bytes!("assets/Ubuntu-Light.ttf"));
|
||||
let font_notoemoji = FontData::from_static(include_bytes!("assets/NotoEmoji-Regular.ttf"));
|
||||
let font_emoji_icon = FontData::from_static(include_bytes!("assets/emoji-icon-font.ttf"));
|
||||
|
||||
let fonts = FontDefinitions {
|
||||
font_data: BTreeMap::from([
|
||||
("Hack".to_owned(), font_hack),
|
||||
("Ubuntu-Light".to_owned(), font_ubuntu_light),
|
||||
("NotoEmoji-Regular".to_owned(), font_notoemoji),
|
||||
("emoji-icon-font".to_owned(), font_emoji_icon),
|
||||
]),
|
||||
families: BTreeMap::from([
|
||||
(
|
||||
FontFamily::Monospace,
|
||||
vec![
|
||||
"Hack".to_owned(),
|
||||
"Ubuntu-Light".to_owned(),
|
||||
"NotoEmoji-Regular".to_owned(),
|
||||
"emoji-icon-font".to_owned(),
|
||||
],
|
||||
),
|
||||
(
|
||||
FontFamily::Proportional,
|
||||
vec![
|
||||
"Ubuntu-Light".to_owned(),
|
||||
"NotoEmoji-Regular".to_owned(),
|
||||
"emoji-icon-font".to_owned(),
|
||||
],
|
||||
),
|
||||
]),
|
||||
};
|
||||
|
||||
let path = "./assets/font_data";
|
||||
|
||||
let fonts_data = bincode::serialize(&fonts).unwrap();
|
||||
// ::to_string(&fonts).expect("Failed to serialize fonts");
|
||||
|
||||
let mut file = BufWriter::new(File::create(&path).expect("Could not create file"));
|
||||
|
||||
file.write_all(fonts_data.as_slice()).unwrap();
|
||||
|
||||
let _ = command_run::Command::with_args("./pack_assets.sh", &[&path])
|
||||
.enable_capture()
|
||||
.run();
|
||||
|
||||
shadow_rs::new().expect("Could not initialize shadow_rs");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user