Struct freetype::glyph_slot::GlyphSlot
[−]
[src]
pub struct GlyphSlot { // some fields omitted }
A struct encapsulating the space for a glyph within a Library
Methods
impl GlyphSlot
[src]
fn from_raw(library_raw: FT_Library, raw: FT_GlyphSlot) -> Self
Create a GlyphSlot
from its constituent C parts
fn render_glyph(&self, render_mode: RenderMode) -> FtResult<()>
Convert a given glyph image to a bitmap. It does so by inspecting the glyph image format, finding the relevant renderer, and invoking it.
fn get_subglyph_info(&self, sub_index: u32) -> FtResult<SubGlyphInfo>
Retrieve a description of a given subglyph. Only use it if the glyph's format is FT_GLYPH_FORMAT_COMPOSITE; an error is returned otherwise.
fn get_glyph(&self) -> FtResult<Glyph>
Returns a glyph object, that is similar to a GlyphSlot
but managed outside of the library
fn outline(&self) -> Option<Outline>
In freetype, the Outline
object is a scalable glyph. This method unpacks a glyph into
this object, or returns None
if the glyph has no outline
fn bitmap(&self) -> Bitmap
This field is used as a bitmap descriptor when the slot format is FT_GLYPH_FORMAT_BITMAP. Note that the address and content of the bitmap buffer can change between calls of FT_Load_Glyph and a few other functions.
fn bitmap_left(&self) -> i32
The bitmap's left bearing expressed in integer pixels. Only valid if the format is FT_GLYPH_FORMAT_BITMAP, this is, if the glyph slot contains a bitmap.
fn bitmap_top(&self) -> i32
The bitmap's top bearing expressed in integer pixels. Remember that this is the distance from the baseline to the top-most glyph scanline, upwards y coordinates being positive.
fn advance(&self) -> Vector
This shorthand is, depending on FT_LOAD_IGNORE_TRANSFORM, the transformed (hinted) advance width for the glyph, in 26.6 fractional pixel format. As specified with FT_LOAD_VERTICAL_LAYOUT, it uses either the ‘horiAdvance’ or the ‘vertAdvance’ value of ‘metrics’ field.
fn linear_hori_advance(&self) -> FT_Fixed
The advance width of the unhinted glyph. Its value is expressed in 16.16 fractional pixels, unless FT_LOAD_LINEAR_DESIGN is set when loading the glyph. This field can be important to perform correct WYSIWYG layout. Only relevant for outline glyphs.
fn linear_vert_advance(&self) -> FT_Fixed
The advance height of the unhinted glyph. Its value is expressed in 16.16 fractional pixels, unless FT_LOAD_LINEAR_DESIGN is set when loading the glyph. This field can be important to perform correct WYSIWYG layout. Only relevant for outline glyphs.
fn metrics(&self) -> GlyphMetrics
The metrics of the last loaded glyph in the slot. The returned values depend on the last load flags (see the FT_Load_Glyph API function) and can be expressed either in 26.6 fractional pixels or font units.
fn raw(&self) -> &FT_GlyphSlotRec
Get a pointer to the underlying c struct
Trait Implementations
impl Hash for GlyphSlot
[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.
impl PartialEq for GlyphSlot
[src]
fn eq(&self, __arg_0: &GlyphSlot) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &GlyphSlot) -> bool
This method tests for !=
.
impl Eq for GlyphSlot
[src]
impl Clone for GlyphSlot
[src]
fn clone(&self) -> GlyphSlot
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more