Struct LinearRgb

Source
pub struct LinearRgb {
    pub red: f64,
    pub green: f64,
    pub blue: f64,
    pub alpha: f32,
}
Expand description

A device independent expression of RGB. No exactly defined chromacities. The components are:

  • Red - a number between 0.0 and 1.0
  • Blue - a number between 0.0 and 1.0
  • Green - a number between 0.0 and 1.0
  • Alpha - a number between 0.0 and 100.0

Fields§

§red: f64§green: f64§blue: f64§alpha: f32

Implementations§

Source§

impl LinearRgb

Source

pub fn new(red: f64, green: f64, blue: f64, alpha: f32) -> Self

Trait Implementations§

Source§

impl Clone for LinearRgb

Source§

fn clone(&self) -> LinearRgb

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<T, U> ColorMix<T, U> for LinearRgb
where Self: From<T> + From<U>,

Source§

fn mix(first: T, second: U, percentage: f64) -> Self

Source§

impl Debug for LinearRgb

Source§

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

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

impl Display for LinearRgb

Source§

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

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

impl From<A98Rgb> for LinearRgb

Source§

fn from(value: A98Rgb) -> Self

Converts to this type from the input type.
Source§

impl From<Color> for LinearRgb

Source§

fn from(value: Color) -> Self

Converts to this type from the input type.
Source§

impl From<Hex> for LinearRgb

Source§

fn from(value: Hex) -> Self

Converts to this type from the input type.
Source§

impl From<Hsl> for LinearRgb

Source§

fn from(value: Hsl) -> Self

Converts to this type from the input type.
Source§

impl From<Hsv> for LinearRgb

Source§

fn from(value: Hsv) -> Self

Converts to this type from the input type.
Source§

impl From<Hwb> for LinearRgb

Source§

fn from(value: Hwb) -> Self

Converts to this type from the input type.
Source§

impl From<Lab> for LinearRgb

Source§

fn from(value: Lab) -> Self

Converts to this type from the input type.
Source§

impl From<Lch> for LinearRgb

Source§

fn from(value: Lch) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for A98Rgb

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Color

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Hex

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Hsl

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Hsv

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Hwb

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Lab

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Lch

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Oklab

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Oklch

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for RgbColor

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for Srgb

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for XyzD50

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<LinearRgb> for XyzD65

Source§

fn from(value: LinearRgb) -> Self

Converts to this type from the input type.
Source§

impl From<Named> for LinearRgb

Source§

fn from(value: Named) -> Self

Converts to this type from the input type.
Source§

impl From<Oklab> for LinearRgb

Source§

fn from(value: Oklab) -> Self

Converts to this type from the input type.
Source§

impl From<Oklch> for LinearRgb

Source§

fn from(value: Oklch) -> Self

Converts to this type from the input type.
Source§

impl From<Srgb> for LinearRgb

Source§

fn from(value: Srgb) -> Self

Converts to this type from the input type.
Source§

impl From<XyzD50> for LinearRgb

Source§

fn from(value: XyzD50) -> Self

Converts to this type from the input type.
Source§

impl From<XyzD65> for LinearRgb

Source§

fn from(value: XyzD65) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for LinearRgb

Source§

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

Source§

impl StructuralPartialEq for LinearRgb

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

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<C, T> ColorDistance<T> for C
where C: Copy, Lab: From<C> + From<T>,

Source§

fn close_to(&self, other: T, tolerance: f64) -> bool

Compares self to other via delta_e, checking that the result is less than or equal to tolerance. Read more
Source§

fn far_from(&self, other: T, tolerance: f64) -> bool

Compares self to other via delta_e, checking that the result is greater than or equal to tolerance. Read more
Source§

fn delta_e(&self, other: T) -> f64

This uses the CIEDE2000 Delta E formula difference between self and other. 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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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.
Source§

impl<C, T> WcagColorContrast<T> for C
where C: Copy, T: Copy, Srgb: From<C> + From<T>,

Source§

fn wcag_contrast_ratio(&self, other: T) -> f64

Calculate the contrast ratio between self and other. colors according to WCAG 2.1. Returns a value between 1:1 and 21:1 Read more
Source§

fn wcag_level(&self, other: T) -> WcagLevel

Get the WCAG level for the contrast between self and other. Read more
Source§

fn find_minimum_contrast<Space>( &self, other: T, level: WcagLevel, ) -> Option<Space>
where Self: WcagColorContrast<Space>, Space: ColorMix<Self, T> + From<Self> + From<T> + Copy + PartialEq + Debug, Srgb: From<Space>, Hex: From<Space>,

Find the closest color that meets a specific WCAG level against a background. Read more