pub struct Cmap14<'a> { /* private fields */ }Expand description
cmap Format 14: Unicode Variation Sequences
Implementations§
Source§impl<'a> Cmap14<'a>
impl<'a> Cmap14<'a>
pub const MIN_SIZE: usize
Sourcepub fn resolve_offset<O: Offset, R: FontRead<'a, Args = ()>>(
&self,
offset: O,
) -> Result<R, ReadError>
pub fn resolve_offset<O: Offset, R: FontRead<'a, Args = ()>>( &self, offset: O, ) -> Result<R, ReadError>
Resolve the provided offset from the start of this table.
Sourcepub fn offset_data(&self) -> FontData<'a>
pub fn offset_data(&self) -> FontData<'a>
Return a reference to this table’s raw data.
We use this in the compile crate to resolve offsets.
Sourcepub fn shape(&self) -> &Self
👎Deprecated: just use the base type directly
pub fn shape(&self) -> &Self
just use the base type directly
Return a reference to the table’s ‘Shape’ struct.
This is a low level implementation detail, but it can be useful in some cases where you want to know things about a table’s layout, such as the byte offsets of specific fields.
Sourcepub fn num_var_selector_records(&self) -> u32
pub fn num_var_selector_records(&self) -> u32
Number of variation Selector Records
Sourcepub fn var_selector(&self) -> &'a [VariationSelector]
pub fn var_selector(&self) -> &'a [VariationSelector]
Array of VariationSelector records.
pub fn format_byte_range(&self) -> Range<usize> ⓘ
pub fn length_byte_range(&self) -> Range<usize> ⓘ
pub fn num_var_selector_records_byte_range(&self) -> Range<usize> ⓘ
pub fn var_selector_byte_range(&self) -> Range<usize> ⓘ
Source§impl<'a> Cmap14<'a>
impl<'a> Cmap14<'a>
Sourcepub fn map_variant(
&self,
codepoint: impl Into<u32>,
selector: impl Into<u32>,
) -> Option<MapVariant>
pub fn map_variant( &self, codepoint: impl Into<u32>, selector: impl Into<u32>, ) -> Option<MapVariant>
Maps a codepoint and variation selector to a nominal glyph identifier.
Sourcepub fn iter(&self) -> Cmap14Iter<'a> ⓘ
pub fn iter(&self) -> Cmap14Iter<'a> ⓘ
Returns an iterator over all (codepoint, selector, mapping variant) triples in the subtable.
Malicious and malformed fonts can produce a large number of invalid
triples. Use Self::iter_with_limits to generate a pruned sequence
that is limited to reasonable values.
Sourcepub fn iter_with_limits(&self, limits: CmapIterLimits) -> Cmap14Iter<'a> ⓘ
pub fn iter_with_limits(&self, limits: CmapIterLimits) -> Cmap14Iter<'a> ⓘ
Returns an iterator over all (codepoint, selector, mapping variant) triples in the subtable within the given limits.
pub fn closure_glyphs( &self, unicodes: &IntSet<u32>, glyph_set: &mut IntSet<GlyphId>, )
std only.