pub struct TextRenderer { /* private fields */ }
Expand description
Glyph renderer for WebGL2.
Example usage:
use wasm_bindgen::JsCast;
use web_sys::WebGl2RenderingContext;
use webgl2_glyph::{TextRenderer, glyph_brush::{FontArc, Section, Text}};
let document = web_sys::window().unwrap().document().unwrap();
let canvas = document.get_element_by_id("canvas").unwrap();
let canvas: web_sys::HtmlCanvasElement =
canvas.dyn_into::<web_sys::HtmlCanvasElement>().unwrap();
let gl = canvas
.get_context("webgl2")
.unwrap()
.unwrap()
.dyn_into::<WebGl2RenderingContext>()
.unwrap();
let font =
FontArc::try_from_slice(include_bytes!("../demos/SourceSansPro-Regular.ttf")).unwrap();
let mut renderer = TextRenderer::try_new(&gl, font).unwrap();
renderer.glyph_brush().queue(
Section::default()
.add_text(Text::new("Hello world").with_scale(50.))
.with_screen_position((30., 30.)),
);
renderer.render().unwrap();
Implementations§
Source§impl TextRenderer
impl TextRenderer
Sourcepub fn glyph_brush(&mut self) -> &mut GlyphBrush<QuadData>
pub fn glyph_brush(&mut self) -> &mut GlyphBrush<QuadData>
Returns a mutable reference to the renderer’s internal GlyphBrush
instance.
This can be used to add text to the queue.
Auto Trait Implementations§
impl Freeze for TextRenderer
impl !RefUnwindSafe for TextRenderer
impl !Send for TextRenderer
impl !Sync for TextRenderer
impl Unpin for TextRenderer
impl !UnwindSafe for TextRenderer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more