pub struct SVGBackend<'a> { /* private fields */ }Expand description
The SVG image drawing backend
Implementations
impl<'a> SVGBackend<'a>
impl<'a> SVGBackend<'a>
pub fn new<T>(path: &'a T, size: (u32, u32)) -> SVGBackend<'a>where
T: AsRef<Path> + ?Sized,
pub fn new<T>(path: &'a T, size: (u32, u32)) -> SVGBackend<'a>where
T: AsRef<Path> + ?Sized,
Create a new SVG drawing backend
pub fn with_string(buf: &'a mut String, size: (u32, u32)) -> SVGBackend<'a>
pub fn with_string(buf: &'a mut String, size: (u32, u32)) -> SVGBackend<'a>
Create a new SVG drawing backend and store the document into a String buffer
Trait Implementations
impl<'a> DrawingBackend for SVGBackend<'a>
impl<'a> DrawingBackend for SVGBackend<'a>
fn ensure_prepared(&mut self) -> Result<(), DrawingErrorKind<Error>>
fn ensure_prepared(&mut self) -> Result<(), DrawingErrorKind<Error>>
Ensure the backend is ready to draw
fn present(&mut self) -> Result<(), DrawingErrorKind<Error>>
fn present(&mut self) -> Result<(), DrawingErrorKind<Error>>
Finalize the drawing step and present all the changes.
This is used as the real-time rendering support.
The backend may implement in the following way, when
ensure_prepared is called
it checks if it needs a fresh buffer and present is called rendering all the
pending changes on the screen. Read morefn draw_pixel(
&mut self,
point: (i32, i32),
color: BackendColor
) -> Result<(), DrawingErrorKind<Error>>
fn draw_pixel(
&mut self,
point: (i32, i32),
color: BackendColor
) -> Result<(), DrawingErrorKind<Error>>
Draw a pixel on the drawing backend Read more
fn draw_line<S>(
&mut self,
from: (i32, i32),
to: (i32, i32),
style: &S
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
fn draw_line<S>(
&mut self,
from: (i32, i32),
to: (i32, i32),
style: &S
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
Draw a line on the drawing backend Read more
fn draw_rect<S>(
&mut self,
upper_left: (i32, i32),
bottom_right: (i32, i32),
style: &S,
fill: bool
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
fn draw_rect<S>(
&mut self,
upper_left: (i32, i32),
bottom_right: (i32, i32),
style: &S,
fill: bool
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
Draw a rectangle on the drawing backend Read more
fn draw_path<S, I>(
&mut self,
path: I,
style: &S
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
I: IntoIterator<Item = (i32, i32)>,
fn draw_path<S, I>(
&mut self,
path: I,
style: &S
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
I: IntoIterator<Item = (i32, i32)>,
Draw a path on the drawing backend Read more
fn fill_polygon<S, I>(
&mut self,
path: I,
style: &S
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
I: IntoIterator<Item = (i32, i32)>,
fn draw_circle<S>(
&mut self,
center: (i32, i32),
radius: u32,
style: &S,
fill: bool
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
fn draw_circle<S>(
&mut self,
center: (i32, i32),
radius: u32,
style: &S,
fill: bool
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendStyle,
Draw a circle on the drawing backend Read more
fn draw_text<S>(
&mut self,
text: &str,
style: &S,
pos: (i32, i32)
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendTextStyle,
fn draw_text<S>(
&mut self,
text: &str,
style: &S,
pos: (i32, i32)
) -> Result<(), DrawingErrorKind<<SVGBackend<'a> as DrawingBackend>::ErrorType>>where
S: BackendTextStyle,
Draw a text on the drawing backend Read more
fn estimate_text_size<TStyle>(
&self,
text: &str,
style: &TStyle
) -> Result<(u32, u32), DrawingErrorKind<Self::ErrorType>>where
TStyle: BackendTextStyle,
fn estimate_text_size<TStyle>(
&self,
text: &str,
style: &TStyle
) -> Result<(u32, u32), DrawingErrorKind<Self::ErrorType>>where
TStyle: BackendTextStyle,
Estimate the size of the horizontal text if rendered on this backend.
This is important because some of the backend may not have font ability.
Thus this allows those backend reports proper value rather than ask the
font rasterizer for that. Read more
impl Drop for SVGBackend<'_>
impl Drop for SVGBackend<'_>
Auto Trait Implementations
impl<'a> RefUnwindSafe for SVGBackend<'a>
impl<'a> Send for SVGBackend<'a>
impl<'a> Sync for SVGBackend<'a>
impl<'a> Unpin for SVGBackend<'a>
impl<'a> !UnwindSafe for SVGBackend<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> IntoDrawingArea for Twhere
T: DrawingBackend,
impl<T> IntoDrawingArea for Twhere
T: DrawingBackend,
sourcefn into_drawing_area(self) -> DrawingArea<T, Shift>
fn into_drawing_area(self) -> DrawingArea<T, Shift>
Convert the type into a root drawing area