Skip to main content

FontPlatform

Trait FontPlatform 

Source
pub trait FontPlatform {
Show 29 methods // Provided methods fn resolve_font_handle( &mut self, _name: &[i32], _size: i32, ) -> Option<PortableFontHandle> { ... } fn release_font_handle( &mut self, _font: PortableFontHandle, _type_flag: i32, ) { ... } fn font_table(&self) -> Vec<(PortableFontHandle, String, i32)> { ... } fn restore_font_table( &mut self, _table: &[(PortableFontHandle, String, i32)], ) -> bool { ... } fn font_metrics(&mut self, _font: PortableFontHandle) -> PortableFontMetrics { ... } fn opentype_font_metrics( &mut self, font: PortableFontHandle, ) -> PortableFontMetrics { ... } fn is_opentype_math_font(&mut self, _font: PortableFontHandle) -> bool { ... } fn using_opentype(&mut self, _font: PortableFontHandle) -> bool { ... } fn math_symbol_parameter( &mut self, _font: PortableFontHandle, _parameter: i32, ) -> i32 { ... } fn math_extension_parameter( &mut self, _font: PortableFontHandle, _parameter: i32, ) -> i32 { ... } fn opentype_math_constant( &mut self, _font: PortableFontHandle, _constant: i32, ) -> i32 { ... } fn opentype_math_accent_position( &mut self, _font: PortableFontHandle, _glyph: i32, ) -> i32 { ... } fn math_glyph_italic_correction( &mut self, _font: PortableFontHandle, _glyph: i32, ) -> i32 { ... } fn math_glyph_variant( &mut self, _font: PortableFontHandle, _glyph: i32, _index: u16, _horizontal: bool, ) -> Option<PortableMathVariant> { ... } fn math_glyph_assembly( &mut self, _font: PortableFontHandle, _glyph: i32, _horizontal: bool, ) -> Vec<PortableMathAssemblyPart> { ... } fn math_min_connector_overlap(&mut self, _font: PortableFontHandle) -> i32 { ... } fn math_kern_at( &mut self, _font: PortableFontHandle, _glyph: i32, _corner: PortableMathKernCorner, _correction_height: i32, ) -> i32 { ... } fn math_points_to_units( &mut self, _font: PortableFontHandle, _points: f32, ) -> f32 { ... } fn math_units_to_scaled( &mut self, _font: PortableFontHandle, _units: i32, ) -> i32 { ... } fn math_point_size(&mut self, _font: PortableFontHandle) -> f32 { ... } fn map_char_to_glyph( &mut self, _font: PortableFontHandle, _codepoint: i32, ) -> i32 { ... } fn map_glyph_to_index( &mut self, _font: PortableFontHandle, _name: &str, ) -> i32 { ... } fn ot_font_get( &mut self, _font: PortableFontHandle, _what: i32, _param1: i32, _param2: i32, _param3: i32, ) -> i32 { ... } fn font_spec(&self, _font: PortableFontHandle) -> Option<String> { ... } fn font_key(&self, _font: PortableFontHandle) -> Option<u64> { ... } fn shape_native_text( &mut self, _font: PortableFontHandle, _text: &[u16], _use_glyph_metrics: bool, ) -> PortableNativeTextMetrics { ... } fn measure_native_glyph( &mut self, _font: PortableFontHandle, _glyph: u16, _use_glyph_metrics: bool, ) -> PortableNativeGlyphMetrics { ... } fn glyph_bounds( &mut self, _font: PortableFontHandle, _glyph: u16, ) -> PortableGlyphBounds { ... } fn char_code_range( &mut self, _font: PortableFontHandle, ) -> Option<(i32, i32)> { ... }
}

Provided Methods§

Source

fn resolve_font_handle( &mut self, _name: &[i32], _size: i32, ) -> Option<PortableFontHandle>

Source

fn release_font_handle(&mut self, _font: PortableFontHandle, _type_flag: i32)

Source

fn font_table(&self) -> Vec<(PortableFontHandle, String, i32)>

The native font table as (handle, spec, size), which lets a loaded format image rebind its font handles.

Source

fn restore_font_table( &mut self, _table: &[(PortableFontHandle, String, i32)], ) -> bool

Reloads each font of a Self::font_table snapshot at its original handle, false when one fails.

Source

fn font_metrics(&mut self, _font: PortableFontHandle) -> PortableFontMetrics

Source

fn opentype_font_metrics( &mut self, font: PortableFontHandle, ) -> PortableFontMetrics

Source

fn is_opentype_math_font(&mut self, _font: PortableFontHandle) -> bool

Source

fn using_opentype(&mut self, _font: PortableFontHandle) -> bool

Whether font is shaped by the OpenType shaper, XeTeX’s usingOpenType.

Source

fn math_symbol_parameter( &mut self, _font: PortableFontHandle, _parameter: i32, ) -> i32

Source

fn math_extension_parameter( &mut self, _font: PortableFontHandle, _parameter: i32, ) -> i32

Source

fn opentype_math_constant( &mut self, _font: PortableFontHandle, _constant: i32, ) -> i32

Source

fn opentype_math_accent_position( &mut self, _font: PortableFontHandle, _glyph: i32, ) -> i32

Source

fn math_glyph_italic_correction( &mut self, _font: PortableFontHandle, _glyph: i32, ) -> i32

OpenType MATH italic correction for a glyph, in scaled points.

Source

fn math_glyph_variant( &mut self, _font: PortableFontHandle, _glyph: i32, _index: u16, _horizontal: bool, ) -> Option<PortableMathVariant>

The indexth larger MATH variant of glyph, horizontal or vertical, None when there is none.

Source

fn math_glyph_assembly( &mut self, _font: PortableFontHandle, _glyph: i32, _horizontal: bool, ) -> Vec<PortableMathAssemblyPart>

The MATH assembly parts for glyph in scaled points, empty when it has none.

Source

fn math_min_connector_overlap(&mut self, _font: PortableFontHandle) -> i32

The MATH minimum connector overlap for assembly parts, in scaled points.

Source

fn math_kern_at( &mut self, _font: PortableFontHandle, _glyph: i32, _corner: PortableMathKernCorner, _correction_height: i32, ) -> i32

One MATH MathKernInfo corner at correction_height, both in font design units.

Source

fn math_points_to_units( &mut self, _font: PortableFontHandle, _points: f32, ) -> f32

Converts points to font design units for font, XeTeX’s pointsToUnits.

Source

fn math_units_to_scaled( &mut self, _font: PortableFontHandle, _units: i32, ) -> i32

Converts font design units to scaled points for font, XeTeX’s D2Fix(unitsToPoints(...)).

Source

fn math_point_size(&mut self, _font: PortableFontHandle) -> f32

The point size at which font was loaded (getPointSize).

Source

fn map_char_to_glyph( &mut self, _font: PortableFontHandle, _codepoint: i32, ) -> i32

Source

fn map_glyph_to_index(&mut self, _font: PortableFontHandle, _name: &str) -> i32

Source

fn ot_font_get( &mut self, _font: PortableFontHandle, _what: i32, _param1: i32, _param2: i32, _param3: i32, ) -> i32

OpenType layout query of \XeTeXcountglyphs and the \XeTeXOT primitives, what is the XeTeX_ext code.

Source

fn font_spec(&self, _font: PortableFontHandle) -> Option<String>

The \font spec a handle was loaded from, such as [latinmodern-math.otf]:script=math;ssty=1.

Source

fn font_key(&self, _font: PortableFontHandle) -> Option<u64>

The key the host’s font loader gave the face behind a handle.

Source

fn shape_native_text( &mut self, _font: PortableFontHandle, _text: &[u16], _use_glyph_metrics: bool, ) -> PortableNativeTextMetrics

Source

fn measure_native_glyph( &mut self, _font: PortableFontHandle, _glyph: u16, _use_glyph_metrics: bool, ) -> PortableNativeGlyphMetrics

Source

fn glyph_bounds( &mut self, _font: PortableFontHandle, _glyph: u16, ) -> PortableGlyphBounds

Advance and control box of glyph at the font’s size, all zero for a glyph without an outline.

Source

fn char_code_range(&mut self, _font: PortableFontHandle) -> Option<(i32, i32)>

Smallest and largest character codes the font maps to a glyph, as XeTeX’s getFontCharRange.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§