Struct write_fonts::tables::cmap::Cmap4
source · pub struct Cmap4 {
pub length: u16,
pub language: u16,
pub seg_count_x2: u16,
pub search_range: u16,
pub entry_selector: u16,
pub range_shift: u16,
pub end_code: Vec<u16>,
pub start_code: Vec<u16>,
pub id_delta: Vec<i16>,
pub id_range_offsets: Vec<u16>,
pub glyph_id_array: Vec<u16>,
}Expand description
cmap Format 4: Segment mapping to delta values
Fields§
§length: u16This is the length in bytes of the subtable.
language: u16For requirements on use of the language field, see “Use of the language field in ‘cmap’ subtables” in this document.
seg_count_x2: u162 × segCount.
search_range: u16Maximum power of 2 less than or equal to segCount, times 2 ((2floor(log2(segCount))) * 2, where “” is an exponentiation operator)
entry_selector: u16Log2 of the maximum power of 2 less than or equal to numTables (log2(searchRange/2), which is equal to floor(log2(segCount)))
range_shift: u16segCount times 2, minus searchRange ((segCount * 2) - searchRange)
end_code: Vec<u16>End characterCode for each segment, last=0xFFFF.
start_code: Vec<u16>Start character code for each segment.
id_delta: Vec<i16>Delta for all character codes in segment.
id_range_offsets: Vec<u16>Offsets into glyphIdArray or 0
glyph_id_array: Vec<u16>Glyph index array (arbitrary length)
Implementations§
Trait Implementations§
source§impl FontWrite for Cmap4
impl FontWrite for Cmap4
source§fn write_into(&self, writer: &mut TableWriter)
fn write_into(&self, writer: &mut TableWriter)
Write our data and information about offsets into this TableWriter.
source§fn table_type(&self) -> TableType
fn table_type(&self) -> TableType
The type of this table. Read more
source§impl From<Cmap4> for CmapSubtable
impl From<Cmap4> for CmapSubtable
source§fn from(src: Cmap4) -> CmapSubtable
fn from(src: Cmap4) -> CmapSubtable
Converts to this type from the input type.
source§impl Ord for Cmap4
impl Ord for Cmap4
source§impl PartialEq for Cmap4
impl PartialEq for Cmap4
source§impl PartialOrd for Cmap4
impl PartialOrd for Cmap4
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self and other) and is used by the <=
operator. Read moresource§impl Validate for Cmap4
impl Validate for Cmap4
source§fn validate_impl(&self, _ctx: &mut ValidationCtx)
fn validate_impl(&self, _ctx: &mut ValidationCtx)
Validate this table. Read more
impl Eq for Cmap4
impl StructuralEq for Cmap4
impl StructuralPartialEq for Cmap4
Auto Trait Implementations§
impl RefUnwindSafe for Cmap4
impl Send for Cmap4
impl Sync for Cmap4
impl Unpin for Cmap4
impl UnwindSafe for Cmap4
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.source§impl<'a, T> FontReadWithArgs<'a> for Twhere
T: FontRead<'a>,
impl<'a, T> FontReadWithArgs<'a> for Twhere
T: FontRead<'a>,
source§impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
source§fn to_owned_obj(&self, data: FontData<'_>) -> U
fn to_owned_obj(&self, data: FontData<'_>) -> U
Convert this type into
T, using the provided data to resolve any offsets.