pub struct DisplayP3;
Expand description
🌌 The Display P3 color space, often used for wide-gamut displays.
Display P3 is similar to sRGB but has higher red and, especially, green chromaticities, thereby extending its gamut over sRGB on those components.
Its components are [r, g, b]
(red, green, and blue channels respectively), with [0, 0, 0]
pure black and [1, 1, 1]
white. The natural bounds of the channels are [0, 1]
.
This corresponds to the color space in CSS Color Module Level 4 § 10.4 and is characterized by the ICC. Display P3 is a variant of the DCI-P3 color space described in SMPTE EG 432-1:2010.
Trait Implementations§
Source§impl ColorSpace for DisplayP3
impl ColorSpace for DisplayP3
Source§const TAG: Option<ColorSpaceTag>
const TAG: Option<ColorSpaceTag>
The tag corresponding to this color space, if a matching tag exists.
Source§const WHITE_COMPONENTS: [f32; 3]
const WHITE_COMPONENTS: [f32; 3]
The component values for the color white within this color space.
Source§fn to_linear_srgb(src: [f32; 3]) -> [f32; 3]
fn to_linear_srgb(src: [f32; 3]) -> [f32; 3]
Convert an opaque color to linear sRGB. Read more
Source§fn from_linear_srgb(src: [f32; 3]) -> [f32; 3]
fn from_linear_srgb(src: [f32; 3]) -> [f32; 3]
Convert an opaque color from linear sRGB. Read more
Source§fn clip([r, g, b]: [f32; 3]) -> [f32; 3]
fn clip([r, g, b]: [f32; 3]) -> [f32; 3]
Clip the color’s components to fit within the natural gamut of the color space. Read more
Source§const LAYOUT: ColorSpaceLayout = ColorSpaceLayout::Rectangular
const LAYOUT: ColorSpaceLayout = ColorSpaceLayout::Rectangular
The layout of the color space. Read more
Source§const WHITE_POINT: Chromaticity = Chromaticity::D65
const WHITE_POINT: Chromaticity = Chromaticity::D65
The white point of the color space. Read more
Source§fn convert<TargetCS: ColorSpace>(src: [f32; 3]) -> [f32; 3]
fn convert<TargetCS: ColorSpace>(src: [f32; 3]) -> [f32; 3]
Convert to a different color space. Read more
Source§fn to_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
fn to_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
Convert an opaque color to linear sRGB, without chromatic adaptation. Read more
Source§fn from_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
fn from_linear_srgb_absolute(src: [f32; 3]) -> [f32; 3]
Convert an opaque color from linear sRGB, without chromatic adaptation. Read more
Source§fn convert_absolute<TargetCS: ColorSpace>(src: [f32; 3]) -> [f32; 3]
fn convert_absolute<TargetCS: ColorSpace>(src: [f32; 3]) -> [f32; 3]
Convert to a different color space, without chromatic adaptation. Read more
Source§fn chromatically_adapt(
src: [f32; 3],
from: Chromaticity,
to: Chromaticity,
) -> [f32; 3]
fn chromatically_adapt( src: [f32; 3], from: Chromaticity, to: Chromaticity, ) -> [f32; 3]
Chromatically adapt the color between the given white point chromaticities. Read more
Source§impl From<DisplayP3> for ColorSpaceTag
impl From<DisplayP3> for ColorSpaceTag
impl Copy for DisplayP3
Auto Trait Implementations§
impl Freeze for DisplayP3
impl RefUnwindSafe for DisplayP3
impl Send for DisplayP3
impl Sync for DisplayP3
impl Unpin for DisplayP3
impl UnwindSafe for DisplayP3
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more