Struct png::CodingIndependentCodePoints

source ·
pub struct CodingIndependentCodePoints {
    pub color_primaries: u8,
    pub transfer_function: u8,
    pub matrix_coefficients: u8,
    pub is_video_full_range_image: bool,
}
Expand description

Coding-independent code points (cICP) specify the color space (primaries), transfer function, matrix coefficients and scaling factor of the image using the code points specified in ITU-T-H.273.

See https://www.w3.org/TR/png-3/#cICP-chunk for more details.

Fields§

§color_primaries: u8

Id number of the color primaries defined in ITU-T-H.273 in “Table 2 - Interpretation of colour primaries (ColourPrimaries) value”.

§transfer_function: u8

Id number of the transfer characteristics defined in ITU-T-H.273 in “Table 3 - Interpretation of transfer characteristics (TransferCharacteristics) value”.

§matrix_coefficients: u8

Id number of the matrix coefficients defined in ITU-T-H.273 in “Table 4 - Interpretation of matrix coefficients (MatrixCoefficients) value”.

This field is included to faithfully replicate the base ITU-T-H.273 specification, but matrix coefficients will always be set to 0, because RGB is currently the only supported color mode in PNG.

§is_video_full_range_image: bool

Whether the image is a full range image or a narrow range image.

This field is included to faithfully replicate the base ITU-T-H.273 specification, but it has limited practical application to PNG images, because narrow-range images are quite rare in practice.

Trait Implementations§

source§

impl Clone for CodingIndependentCodePoints

source§

fn clone(&self) -> CodingIndependentCodePoints

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 Debug for CodingIndependentCodePoints

source§

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

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

impl PartialEq for CodingIndependentCodePoints

source§

fn eq(&self, other: &CodingIndependentCodePoints) -> 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 Copy for CodingIndependentCodePoints

source§

impl Eq for CodingIndependentCodePoints

source§

impl StructuralPartialEq for CodingIndependentCodePoints

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 T)

🔬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.