sar_core/renderer/
mod.rs

1pub mod draw;
2pub mod resource;
3pub use draw::SymbolArtDrawer;
4
5pub(crate) mod default {
6    use super::draw::{Drawer, SymbolArtDrawer};
7    use crate::core::sa::{SymbolArt, SymbolArtLayer};
8    use crate::Result;
9    use image::{ImageBuffer, Rgba};
10
11    /// A handy function to draw a SymbolArt
12    /// Should avoid using this function recursively
13    pub fn draw<S, L>(sa: &S) -> Result<ImageBuffer<Rgba<u8>, Vec<u8>>>
14    where
15        S: SymbolArt<Layer = L>,
16        L: SymbolArtLayer + Sync,
17    {
18        let drawer = SymbolArtDrawer::default();
19        drawer.draw_with_scale(sa, 1.0)
20    }
21}