read_fonts::tables::cvar

Type Alias Cvar

Source
pub type Cvar<'a> = TableRef<'a, CvarMarker>;
Expand description

The cvar table.

Aliased Type§

struct Cvar<'a> { /* private fields */ }

Implementations§

Source§

impl<'a> Cvar<'a>

Source

pub fn version(&self) -> MajorMinor

Major/minor version number of the CVT variations table — set to (1,0).

Source

pub fn tuple_variation_count(&self) -> TupleVariationCount

A packed field. The high 4 bits are flags, and the low 12 bits are the number of tuple variation tables for this glyph. The number of tuple variation tables can be any number between 1 and 4095.

Source

pub fn data_offset(&self) -> Offset16

Offset from the start of the ‘cvar’ table to the serialized data.

Source

pub fn data(&self) -> Result<FontData<'a>, ReadError>

Attempt to resolve data_offset.

Source

pub fn tuple_variation_headers( &self, ) -> VarLenArray<'a, TupleVariationHeader<'_>>

Array of tuple variation headers.

Source§

impl<'a> Cvar<'a>

Source

pub fn variation_data( &self, axis_count: u16, ) -> Result<CvtVariationData<'a>, ReadError>

Returns the variation data containing the tuples and deltas for the control value table.

This table doesn’t contain an axis count field so this must be provided by the user and can be read from the fvar table.

Source

pub fn deltas( &self, axis_count: u16, coords: &[F2Dot14], deltas: &mut [i32], ) -> Result<(), ReadError>

Computes the accumulated deltas for the given set of normalized coordinates and stores them in deltas.

The axis_count parameter expects the value from the fvar table.

The deltas slice should have a length greater than or equal to the number of values in the cvt table. The values are computed in 16.16 format.

Trait Implementations§

Source§

impl<'a> FontRead<'a> for Cvar<'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 TopLevelTable for Cvar<'_>

Source§

const TAG: Tag = _

cvar