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