Skip to main content

Gvar

Struct Gvar 

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

Fields§

§data: FontData<'a>

Implementations§

Source§

impl<'a> Gvar<'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) -> MajorMinor

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

Source

pub fn axis_count(&self) -> u16

The number of variation axes for this font. This must be the same number as axisCount in the ‘fvar’ table.

Source

pub fn shared_tuple_count(&self) -> u16

The number of shared tuple records. Shared tuple records can be referenced within glyph variation data tables for multiple glyphs, as opposed to other tuple records stored directly within a glyph variation data table.

Source

pub fn shared_tuples_offset(&self) -> Offset32

Offset from the start of this table to the shared tuple records.

Source

pub fn shared_tuples(&self) -> Result<SharedTuples<'a>, ReadError>

Attempt to resolve shared_tuples_offset.

Source

pub fn glyph_count(&self) -> u16

The number of glyphs in this font. This must match the number of glyphs stored elsewhere in the font.

Source

pub fn flags(&self) -> GvarFlags

Bit-field that gives the format of the offset array that follows. If bit 0 is clear, the offsets are uint16; if bit 0 is set, the offsets are uint32.

Source

pub fn glyph_variation_data_array_offset(&self) -> u32

Offset from the start of this table to the array of GlyphVariationData tables.

Source

pub fn glyph_variation_data_offsets(&self) -> ComputedArray<'a, U16Or32>

Offsets from the start of the GlyphVariationData array to each GlyphVariationData table.

Source

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

Source

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

Source

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

Source

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

Source

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

Source

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

Source

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

Source

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

Source§

impl<'a> Gvar<'a>

Source

pub fn data_for_gid( &self, gid: GlyphId, ) -> Result<Option<FontData<'a>>, ReadError>

Return the raw data for this gid.

If there is no variation data for the glyph, returns Ok(None).

Source

pub fn glyph_variation_data_for_range( &self, offset_range: Range<usize>, ) -> Result<FontData<'a>, ReadError>

Source

pub fn as_bytes(&self) -> &[u8]

Source

fn data_range_for_gid(&self, gid: GlyphId) -> Result<Range<usize>, ReadError>

Source

pub fn glyph_variation_data( &self, gid: GlyphId, ) -> Result<Option<GlyphVariationData<'a>>, ReadError>

Get the variation data for a specific glyph.

Returns Ok(None) if there is no variation data for this glyph, and returns an error if there is data but it is malformed.

Source

pub fn phantom_point_deltas( &self, glyf: &Glyf<'_>, loca: &Loca<'_>, coords: &[F2Dot14], glyph_id: GlyphId, ) -> Result<Option<[Point<Fixed>; 4]>, ReadError>

Returns the phantom point deltas for the given variation coordinates and glyph identifier, if variation data exists for the glyph.

The resulting array will contain four deltas: [left, right, top, bottom].

Trait Implementations§

Source§

impl<'a> Clone for Gvar<'a>

Source§

fn clone(&self) -> Gvar<'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 Gvar<'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 Gvar<'a>

Source§

impl TopLevelTable for Gvar<'_>

Source§

const TAG: Tag

gvar

Auto Trait Implementations§

§

impl<'a> Freeze for Gvar<'a>

§

impl<'a> RefUnwindSafe for Gvar<'a>

§

impl<'a> Send for Gvar<'a>

§

impl<'a> Sync for Gvar<'a>

§

impl<'a> Unpin for Gvar<'a>

§

impl<'a> UnsafeUnpin for Gvar<'a>

§

impl<'a> UnwindSafe for Gvar<'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.