Trait Backend
pub trait Backend: Sized {
    type Geometry;
Show 21 methods
    // Required methods
    fn width(&self) -> f32;
    fn height(&self) -> f32;
    fn size(&self) -> Size;
    fn center(&self) -> Point;
    fn push_transform(&mut self);
    fn pop_transform(&mut self);
    fn translate(&mut self, translation: Vector);
    fn rotate(&mut self, angle: impl Into<Radians>);
    fn scale(&mut self, scale: impl Into<f32>);
    fn scale_nonuniform(&mut self, scale: impl Into<Vector>);
    fn draft(&mut self, clip_bounds: Rectangle) -> Self;
    fn paste(&mut self, frame: Self);
    fn stroke<'a>(&mut self, path: &Path, stroke: impl Into<Stroke<'a>>);
    fn stroke_rectangle<'a>(
        &mut self,
        top_left: Point,
        size: Size,
        stroke: impl Into<Stroke<'a>>,
    );
    fn stroke_text<'a>(
        &mut self,
        text: impl Into<Text>,
        stroke: impl Into<Stroke<'a>>,
    );
    fn fill(&mut self, path: &Path, fill: impl Into<Fill>);
    fn fill_text(&mut self, text: impl Into<Text>);
    fn fill_rectangle(
        &mut self,
        top_left: Point,
        size: Size,
        fill: impl Into<Fill>,
    );
    fn draw_image(&mut self, bounds: Rectangle, image: impl Into<Image>);
    fn draw_svg(&mut self, bounds: Rectangle, svg: impl Into<Svg>);
    fn into_geometry(self) -> Self::Geometry;
}Available on crate feature 
geometry only.Expand description
Required Associated Types§
type Geometry
Required Methods§
fn width(&self) -> f32
fn height(&self) -> f32
fn size(&self) -> Size
fn center(&self) -> Point
fn push_transform(&mut self)
fn pop_transform(&mut self)
fn translate(&mut self, translation: Vector)
fn rotate(&mut self, angle: impl Into<Radians>)
fn scale(&mut self, scale: impl Into<f32>)
fn scale_nonuniform(&mut self, scale: impl Into<Vector>)
fn draft(&mut self, clip_bounds: Rectangle) -> Self
fn paste(&mut self, frame: Self)
fn stroke<'a>(&mut self, path: &Path, stroke: impl Into<Stroke<'a>>)
fn stroke_rectangle<'a>( &mut self, top_left: Point, size: Size, stroke: impl Into<Stroke<'a>>, )
fn stroke_text<'a>( &mut self, text: impl Into<Text>, stroke: impl Into<Stroke<'a>>, )
fn fill(&mut self, path: &Path, fill: impl Into<Fill>)
fn fill_text(&mut self, text: impl Into<Text>)
fn fill_rectangle(&mut self, top_left: Point, size: Size, fill: impl Into<Fill>)
fn draw_image(&mut self, bounds: Rectangle, image: impl Into<Image>)
fn draw_svg(&mut self, bounds: Rectangle, svg: impl Into<Svg>)
fn into_geometry(self) -> Self::Geometry
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.