pub trait Renderer: Any {
// Required methods
fn window_size(&self) -> Vec2;
fn create_image(&self, data: &ImageData) -> ImageHandle;
fn messure_text(&self, section: &TextSection) -> Option<Rect>;
fn hit_text(&self, section: &TextSection, position: Vec2) -> Option<TextHit>;
// Provided method
fn scale(&self) -> f32 { ... }
}