cotati 0.1.2

cotati is a general-purpose vector drawing interface that does not restrict binding to a back-end renderer.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::{Draw, PreserveAspectRatio, Renderer};

/// Apply `PreserveAspectRatio` to viewbox.
pub fn aspect<R, D, E>(ratio: PreserveAspectRatio, child: D) -> impl Fn(&mut R) -> Result<(), E>
where
    R: Renderer,
    D: Draw<R, Error = E>,
{
    move |renderer| {
        renderer.push_preserve_aspect_ratio(ratio);

        child.render(renderer)?;

        renderer.pop(1);

        Ok(())
    }
}