[][src]Struct gfx_glyph::GlyphBrushBuilder

pub struct GlyphBrushBuilder<'a, H = DefaultSectionHasher> { /* fields omitted */ }

Builder for a GlyphBrush.

Example

use gfx_glyph::GlyphBrushBuilder;

let dejavu: &[u8] = include_bytes!("../../fonts/DejaVuSans.ttf");
let mut glyph_brush = GlyphBrushBuilder::using_font_bytes(dejavu).build(gfx_factory.clone());

Methods

impl<'a> GlyphBrushBuilder<'a>[src]

pub fn using_font_bytes<B: Into<SharedBytes<'a>>>(font_0_data: B) -> Self[src]

Specifies the default font data used to render glyphs. Referenced with FontId(0), which is default.

pub fn using_fonts_bytes<B, V>(font_data: V) -> Self where
    B: Into<SharedBytes<'a>>,
    V: Into<Vec<B>>, 
[src]

pub fn using_font(font_0: Font<'a>) -> Self[src]

Specifies the default font used to render glyphs. Referenced with FontId(0), which is default.

pub fn using_fonts<V: Into<Vec<Font<'a>>>>(fonts: V) -> Self[src]

impl<'a, H: BuildHasher> GlyphBrushBuilder<'a, H>[src]

pub fn add_font_bytes<B: Into<SharedBytes<'a>>>(
    &mut self,
    font_data: B
) -> FontId

Adds additional fonts to the one added in using_font / using_font_bytes. Returns a FontId to reference this font.

pub fn add_font(&mut self, font_data: Font<'a>) -> FontId

Adds additional fonts to the one added in using_font / using_font_bytes. Returns a FontId to reference this font.

pub fn initial_cache_size(self, size: (u32, u32)) -> Self

Initial size of 2D texture used as a gpu cache, pixels (width, height). The GPU cache will dynamically quadruple in size whenever the current size is insufficient.

Defaults to (256, 256)

pub fn gpu_cache_scale_tolerance(self, tolerance: f32) -> Self

Sets the maximum allowed difference in scale used for judging whether to reuse an existing glyph in the GPU cache.

Defaults to 0.5

See rusttype docs for rusttype::gpu_cache::Cache

pub fn gpu_cache_position_tolerance(self, tolerance: f32) -> Self

Sets the maximum allowed difference in subpixel position used for judging whether to reuse an existing glyph in the GPU cache. Anything greater than or equal to 1.0 means "don't care".

Defaults to 0.1

See rusttype docs for rusttype::gpu_cache::Cache

pub fn cache_glyph_positioning(self, cache: bool) -> Self

Sets whether perform the calculation of glyph positioning according to the layout every time, or use a cached result if the input Section and GlyphPositioner are the same hash as a previous call.

Improves performance. Should only disable if using a custom GlyphPositioner that is impure according to it's inputs, so caching a previous call is not desired. Disabling also disables cache_glyph_drawing.

Defaults to true

pub fn cache_glyph_drawing(self, cache: bool) -> Self

Sets optimising drawing by reusing the last draw requesting an identical draw queue.

Improves performance. Is disabled if cache_glyph_positioning is disabled.

Defaults to true

pub fn depth_test(self, depth_test: Depth) -> Self[src]

Sets the depth test to use on the text section z values.

Defaults to: Always pass the depth test, never write to the depth buffer write

Example

GlyphBrushBuilder::using_font_bytes(some_font)
    .depth_test(gfx::preset::depth::LESS_EQUAL_WRITE)
    // ...

pub fn texture_filter_method(self, filter_method: FilterMethod) -> Self[src]

Sets the texture filtering method.

Defaults to Bilinear

Example

GlyphBrushBuilder::using_font_bytes(some_font)
    .texture_filter_method(gfx::texture::FilterMethod::Scale)
    // ...

pub fn section_hasher<T: BuildHasher>(
    self,
    section_hasher: T
) -> GlyphBrushBuilder<'a, T>
[src]

Sets the section hasher. GlyphBrush cannot handle absolute section hash collisions so use a good hash algorithm.

This hasher is used to distinguish sections, rather than for hashmap internal use.

Defaults to seahash.

Example

GlyphBrushBuilder::using_font_bytes(some_font)
    .section_hasher(SomeOtherBuildHasher::default())
    // ...

pub fn build<R, F>(self, factory: F) -> GlyphBrush<'a, R, F, H> where
    R: Resources,
    F: Factory<R>, 
[src]

Builds a GlyphBrush using the input gfx factory

Auto Trait Implementations

impl<'a, H> Send for GlyphBrushBuilder<'a, H> where
    H: Send

impl<'a, H> Sync for GlyphBrushBuilder<'a, H> where
    H: Sync

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]