use image::ImageEncoder as _;
fn main() -> std::io::Result<()> {
let into = std::path::PathBuf::from(std::env::args().nth(1).unwrap_or_else(|| "assets".into()));
std::fs::write(into.join("yog.svg"), yog::theme::icon::svg())?;
for size in yog::theme::icon::PNG_SIZES {
let mut out = Vec::new();
image::codecs::png::PngEncoder::new_with_quality(
&mut out,
image::codecs::png::CompressionType::Best,
image::codecs::png::FilterType::Adaptive,
)
.write_image(
&yog::theme::icon::rgba(size),
u32::from(size),
u32::from(size),
image::ExtendedColorType::Rgba8,
)
.map_err(std::io::Error::other)?;
std::fs::write(into.join(format!("yog-{size}.png")), out)?;
}
Ok(())
}