Trait plotters_backend::BackendTextStyle[][src]

pub trait BackendTextStyle {
    type FontError: Error + Sync + Send + 'static;
    fn family(&self) -> FontFamily<'_>;
fn layout_box(
        &self,
        text: &str
    ) -> Result<((i32, i32), (i32, i32)), Self::FontError>;
fn draw<E, DrawFunc: FnMut(i32, i32, BackendColor) -> Result<(), E>>(
        &self,
        text: &str,
        pos: BackendCoord,
        draw: DrawFunc
    ) -> Result<Result<(), E>, Self::FontError>; fn color(&self) -> BackendColor { ... }
fn size(&self) -> f64 { ... }
fn transform(&self) -> FontTransform { ... }
fn style(&self) -> FontStyle { ... }
fn anchor(&self) -> Pos { ... } }
Expand description

The trait that abstracts a style of a text.

This is used because the the backend crate have no knowledge about how the text handling is implemented in plotters.

But the backend still wants to know some information about the font, for the backend doesn’t handles text drawing, may want to call the draw method which is implemented by the plotters main crate. While for the backend that handles the text drawing, those font information provides instructions about how the text should be rendered: color, size, slant, anchor, font, etc.

This trait decouples the detailed implementaiton about the font and the backend code which wants to perfome some operation on the font.

Associated Types

The error type of this text style implementation

Required methods

Provided methods

Implementors