Skip to main content

Cpal

Struct Cpal 

Source
pub struct Cpal<'a> {
    data: FontData<'a>,
}
Expand description

Fields§

§data: FontData<'a>

Implementations§

Source§

impl<'a> Cpal<'a>

Source

pub const MIN_SIZE: usize

Source

pub fn resolve_offset<O: Offset, R: FontRead<'a>>( &self, offset: O, ) -> Result<R, ReadError>

Resolve the provided offset from the start of this table.

Source

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.

Source

pub fn shape(&self) -> &Self

👎Deprecated: 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.

Source

pub fn version(&self) -> u16

Table version number (=0).

Source

pub fn num_palette_entries(&self) -> u16

Number of palette entries in each palette.

Source

pub fn num_palettes(&self) -> u16

Number of palettes in the table.

Source

pub fn num_color_records(&self) -> u16

Total number of color records, combined for all palettes.

Source

pub fn color_records_array_offset(&self) -> Nullable<Offset32>

Offset from the beginning of CPAL table to the first ColorRecord.

Source

pub fn color_records_array( &self, ) -> Option<Result<&'a [ColorRecord], ReadError>>

Attempt to resolve color_records_array_offset.

Source

pub fn color_record_indices(&self) -> &'a [BigEndian<u16>]

Index of each palette’s first color record in the combined color record array.

Source

pub fn palette_types_array_offset(&self) -> Option<Nullable<Offset32>>

Offset from the beginning of CPAL table to the Palette Types Array.

This is an array of 32-bit flag fields that describe properties of each palette.

Source

pub fn palette_types_array( &self, ) -> Option<Result<&'a [BigEndian<PaletteType>], ReadError>>

Attempt to resolve palette_types_array_offset.

Source

pub fn palette_labels_array_offset(&self) -> Option<Nullable<Offset32>>

Offset from the beginning of CPAL table to the Palette Labels Array.

This is an array of ‘name’ table IDs (typically in the font-specific name ID range) that specify user interface strings associated with each palette. Use 0xFFFF if no name ID is provided for a palette.

Source

pub fn palette_labels_array( &self, ) -> Option<Result<&'a [BigEndian<NameId>], ReadError>>

Attempt to resolve palette_labels_array_offset.

Source

pub fn palette_entry_labels_array_offset(&self) -> Option<Nullable<Offset32>>

Offset from the beginning of CPAL table to the Palette Entry Labels Array.

This is an array of ‘name’ table IDs (typically in the font-specific name ID range) that specify user interface strings associated with each palette entry, e.g. “Outline”, “Fill”. This set of palette entry labels applies to all palettes in the font. Use 0xFFFF if no name ID is provided for a palette entry.

Source

pub fn palette_entry_labels_array( &self, ) -> Option<Result<&'a [BigEndian<NameId>], ReadError>>

Source

pub fn version_byte_range(&self) -> Range<usize>

Source

pub fn num_palette_entries_byte_range(&self) -> Range<usize>

Source

pub fn num_palettes_byte_range(&self) -> Range<usize>

Source

pub fn num_color_records_byte_range(&self) -> Range<usize>

Source

pub fn color_records_array_offset_byte_range(&self) -> Range<usize>

Source

pub fn color_record_indices_byte_range(&self) -> Range<usize>

Source

pub fn palette_types_array_offset_byte_range(&self) -> Range<usize>

Source

pub fn palette_labels_array_offset_byte_range(&self) -> Range<usize>

Source

pub fn palette_entry_labels_array_offset_byte_range(&self) -> Range<usize>

Trait Implementations§

Source§

impl<'a> Clone for Cpal<'a>

Source§

fn clone(&self) -> Cpal<'a>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> FontRead<'a> for Cpal<'a>

Source§

fn read(data: FontData<'a>) -> Result<Self, ReadError>

Read an instance of Self from the provided data, performing validation. Read more
Source§

impl<'a> MinByteRange<'a> for Cpal<'a>

Source§

impl TopLevelTable for Cpal<'_>

Source§

const TAG: Tag

CPAL

Auto Trait Implementations§

§

impl<'a> Freeze for Cpal<'a>

§

impl<'a> RefUnwindSafe for Cpal<'a>

§

impl<'a> Send for Cpal<'a>

§

impl<'a> Sync for Cpal<'a>

§

impl<'a> Unpin for Cpal<'a>

§

impl<'a> UnsafeUnpin for Cpal<'a>

§

impl<'a> UnwindSafe for Cpal<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<'a, T> FontReadWithArgs<'a> for T
where T: FontRead<'a>,

Source§

fn read_with_args( data: FontData<'a>, _: &<T as ReadArgs>::Args, ) -> Result<T, ReadError>

read an item, using the provided args. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<'a, T> ReadArgs for T
where T: FontRead<'a>,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.