Enum gfx_glyph::Layout [−][src]
pub enum Layout<L: LineBreaker> { SingleLine { line_breaker: L, h_align: HorizontalAlign, v_align: VerticalAlign, }, Wrap { line_breaker: L, h_align: HorizontalAlign, v_align: VerticalAlign, }, }
Built-in GlyphPositioner
implementations.
Takes generic LineBreaker
to indicate the wrapping style.
See BuiltInLineBreaker
.
Example
let layout = Layout::default().h_align(HorizontalAlign::Right);
Variants
SingleLine
Renders a single line from left-to-right according to the inner alignment. Hard breaking will end the line, partially hitting the width bound will end the line.
Fields of SingleLine
line_breaker: L | |
h_align: HorizontalAlign | |
v_align: VerticalAlign |
Wrap
Renders multiple lines from left-to-right according to the inner alignment. Hard breaking characters will cause advancement to another line. A characters hitting the width bound will also cause another line to start.
Fields of Wrap
line_breaker: L | |
h_align: HorizontalAlign | |
v_align: VerticalAlign |
Methods
impl Layout<BuiltInLineBreaker>
[src]
impl Layout<BuiltInLineBreaker>
pub fn default_single_line() -> Self
[src]
pub fn default_single_line() -> Self
pub fn default_wrap() -> Self
[src]
pub fn default_wrap() -> Self
impl<L: LineBreaker> Layout<L>
[src]
impl<L: LineBreaker> Layout<L>
pub fn h_align(self, h_align: HorizontalAlign) -> Self
[src]
pub fn h_align(self, h_align: HorizontalAlign) -> Self
Returns an identical Layout
but with the input h_align
pub fn v_align(self, v_align: VerticalAlign) -> Self
[src]
pub fn v_align(self, v_align: VerticalAlign) -> Self
Returns an identical Layout
but with the input v_align
pub fn line_breaker<L2: LineBreaker>(self, line_breaker: L2) -> Layout<L2>
[src]
pub fn line_breaker<L2: LineBreaker>(self, line_breaker: L2) -> Layout<L2>
Returns an identical Layout
but with the input line_breaker
Trait Implementations
impl<L: Debug + LineBreaker> Debug for Layout<L>
[src]
impl<L: Debug + LineBreaker> Debug for Layout<L>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<L: Clone + LineBreaker> Clone for Layout<L>
[src]
impl<L: Clone + LineBreaker> Clone for Layout<L>
fn clone(&self) -> Layout<L>
[src]
fn clone(&self) -> Layout<L>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl<L: Copy + LineBreaker> Copy for Layout<L>
[src]
impl<L: Copy + LineBreaker> Copy for Layout<L>
impl<L: Hash + LineBreaker> Hash for Layout<L>
[src]
impl<L: Hash + LineBreaker> Hash for Layout<L>
fn hash<__HL: Hasher>(&self, state: &mut __HL)
[src]
fn hash<__HL: Hasher>(&self, state: &mut __HL)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl<L: PartialEq + LineBreaker> PartialEq for Layout<L>
[src]
impl<L: PartialEq + LineBreaker> PartialEq for Layout<L>
fn eq(&self, other: &Layout<L>) -> bool
[src]
fn eq(&self, other: &Layout<L>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Layout<L>) -> bool
[src]
fn ne(&self, other: &Layout<L>) -> bool
This method tests for !=
.
impl<L: Eq + LineBreaker> Eq for Layout<L>
[src]
impl<L: Eq + LineBreaker> Eq for Layout<L>
impl Default for Layout<BuiltInLineBreaker>
[src]
impl Default for Layout<BuiltInLineBreaker>
impl<L: LineBreaker> GlyphPositioner for Layout<L>
[src]
impl<L: LineBreaker> GlyphPositioner for Layout<L>
fn calculate_glyphs<'font>(
&self,
font_map: &FontMap<'font>,
section: &VariedSection
) -> Vec<(PositionedGlyph<'font>, [f32; 4], FontId)>
[src]
fn calculate_glyphs<'font>(
&self,
font_map: &FontMap<'font>,
section: &VariedSection
) -> Vec<(PositionedGlyph<'font>, [f32; 4], FontId)>
Calculate a sequence of positioned glyphs to render. Custom implementations should always return the same result when called with the same arguments. If not consider disabling cache_glyph_positioning
. Read more
fn bounds_rect(&self, section: &VariedSection) -> Rect<f32>
[src]
fn bounds_rect(&self, section: &VariedSection) -> Rect<f32>
Return a screen rectangle according to the requested render position and bounds appropriate for the glyph layout. Read more