read_fonts::tables::gpos

Struct ValueRecord

Source
pub struct ValueRecord {
    pub x_placement: Option<BigEndian<i16>>,
    pub y_placement: Option<BigEndian<i16>>,
    pub x_advance: Option<BigEndian<i16>>,
    pub y_advance: Option<BigEndian<i16>>,
    pub x_placement_device: BigEndian<Nullable<Offset16>>,
    pub y_placement_device: BigEndian<Nullable<Offset16>>,
    pub x_advance_device: BigEndian<Nullable<Offset16>>,
    pub y_advance_device: BigEndian<Nullable<Offset16>>,
    /* private fields */
}
Expand description

A Positioning ValueRecord.

NOTE: we create these manually, since parsing is weird and depends on the associated valueformat. That said, this isn’t a great representation? we could definitely do something much more in the zero-copy mode..

Fields§

§x_placement: Option<BigEndian<i16>>§y_placement: Option<BigEndian<i16>>§x_advance: Option<BigEndian<i16>>§y_advance: Option<BigEndian<i16>>§x_placement_device: BigEndian<Nullable<Offset16>>§y_placement_device: BigEndian<Nullable<Offset16>>§x_advance_device: BigEndian<Nullable<Offset16>>§y_advance_device: BigEndian<Nullable<Offset16>>

Implementations§

Source§

impl ValueRecord

Source

pub fn read(data: FontData<'_>, format: ValueFormat) -> Result<Self, ReadError>

Source

pub fn x_placement(&self) -> Option<i16>

Source

pub fn y_placement(&self) -> Option<i16>

Source

pub fn x_advance(&self) -> Option<i16>

Source

pub fn y_advance(&self) -> Option<i16>

Source

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

Source

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

Source

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

Source

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

Trait Implementations§

Source§

impl Clone for ValueRecord

Source§

fn clone(&self) -> ValueRecord

Returns a copy 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 ComputeSize for ValueRecord

Source§

fn compute_size(args: &ValueFormat) -> Result<usize, ReadError>

Compute the number of bytes required to represent this type.
Source§

impl Debug for ValueRecord

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for ValueRecord

Source§

fn default() -> ValueRecord

Returns the “default value” for a type. Read more
Source§

impl<'a> FontReadWithArgs<'a> for ValueRecord

Source§

fn read_with_args( data: FontData<'a>, args: &Self::Args, ) -> Result<Self, ReadError>

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

impl PartialEq for ValueRecord

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl ReadArgs for ValueRecord

Source§

impl Eq for ValueRecord

Auto Trait Implementations§

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, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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<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.