Table of Contents

Struct YCbCr

Namespace
SixLabors.ImageSharp.ColorProfiles
Assembly
SixLabors.ImageSharp.dll

Represents an YCbCr (luminance, blue chroma, red chroma) color.

public readonly struct YCbCr : IColorProfile<YCbCr, Rgb>, IColorProfile<YCbCr>, IColorProfile, IEquatable<YCbCr>
Implements
Inherited Members

Constructors

YCbCr(Vector3)

Initializes a new instance of the YCbCr struct.

public YCbCr(Vector3 vector)

Parameters

vector Vector3

The vector representing the y, cb, cr components.

YCbCr(float, float, float)

Initializes a new instance of the YCbCr struct.

public YCbCr(float y, float cb, float cr)

Parameters

y float

The y luminance component.

cb float

The cb chroma component.

cr float

The cr chroma component.

Properties

Cb

Gets the Cb chroma component. A value ranging between 0 and 1.

public float Cb { get; }

Property Value

float

Cr

Gets the Cr chroma component. A value ranging between 0 and 1.

public float Cr { get; }

Property Value

float

Y

Gets the Y luminance component. A value ranging between 0 and 1.

public float Y { get; }

Property Value

float

Methods

Equals(YCbCr)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(YCbCr other)

Parameters

other YCbCr

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object?)

Indicates whether this instance and a specified object are equal.

public override bool Equals(object? obj)

Parameters

obj object

The object to compare with the current instance.

Returns

bool

true if obj and this instance are the same type and represent the same value; otherwise, false.

FromProfileConnectingSpace(ColorConversionOptions, in Rgb)

Initializes the color instance from the profile connection space.

public static YCbCr FromProfileConnectingSpace(ColorConversionOptions options, in Rgb source)

Parameters

options ColorConversionOptions

The color profile conversion options.

source Rgb

The color profile connecting space.

Returns

YCbCr

The YCbCr.

FromProfileConnectionSpace(ColorConversionOptions, ReadOnlySpan<Rgb>, Span<YCbCr>)

Converts the span of colors from the profile connection space.

public static void FromProfileConnectionSpace(ColorConversionOptions options, ReadOnlySpan<Rgb> source, Span<YCbCr> destination)

Parameters

options ColorConversionOptions

The color profile conversion options.

source ReadOnlySpan<Rgb>

The color profile span to convert from.

destination Span<YCbCr>

The color span to write the results to.

FromScaledVector4(Vector4)

Initializes the color instance from a generic a generic ("scaled") Vector4 representation with values scaled and clamped between 0 and 1.

public static YCbCr FromScaledVector4(Vector4 source)

Parameters

source Vector4

The vector to load the pixel from.

Returns

YCbCr

The YCbCr.

FromScaledVector4(ReadOnlySpan<Vector4>, Span<YCbCr>)

Converts the span of colors from a generic ("scaled") Vector4 representation with values scaled and clamped between 0 and 1.

public static void FromScaledVector4(ReadOnlySpan<Vector4> source, Span<YCbCr> destination)

Parameters

source ReadOnlySpan<Vector4>

The vector span to convert from.

destination Span<YCbCr>

The color span to write the results to.

GetChromaticAdaptionWhitePointSource()

Gets the chromatic adaption white point source.

public static ChromaticAdaptionWhitePointSource GetChromaticAdaptionWhitePointSource()

Returns

ChromaticAdaptionWhitePointSource

The ChromaticAdaptionWhitePointSource.

GetHashCode()

Returns the hash code for this instance.

public override int GetHashCode()

Returns

int

A 32-bit signed integer that is the hash code for this instance.

ToProfileConnectingSpace(ColorConversionOptions)

Converts the color to the profile connection space.

public Rgb ToProfileConnectingSpace(ColorConversionOptions options)

Parameters

options ColorConversionOptions

The color profile conversion options.

Returns

Rgb

The Rgb.

ToProfileConnectionSpace(ColorConversionOptions, ReadOnlySpan<YCbCr>, Span<Rgb>)

Converts the span of colors to the profile connection space.

public static void ToProfileConnectionSpace(ColorConversionOptions options, ReadOnlySpan<YCbCr> source, Span<Rgb> destination)

Parameters

options ColorConversionOptions

The color profile conversion options.

source ReadOnlySpan<YCbCr>

The color span to convert from.

destination Span<Rgb>

The color profile span to write the results to.

ToScaledVector4()

Expands the pixel into a generic ("scaled") Vector4 representation with values scaled and clamped between 0 and 1. The vector components are typically expanded in least to greatest significance order.

public Vector4 ToScaledVector4()

Returns

Vector4

The Vector4.

ToScaledVector4(ReadOnlySpan<YCbCr>, Span<Vector4>)

Converts the span of colors to a generic ("scaled") Vector4 representation with values scaled and clamped between 0 and 1.

public static void ToScaledVector4(ReadOnlySpan<YCbCr> source, Span<Vector4> destination)

Parameters

source ReadOnlySpan<YCbCr>

The color span to convert from.

destination Span<Vector4>

The vector span to write the results to.

ToString()

Returns the fully qualified type name of this instance.

public override string ToString()

Returns

string

The fully qualified type name.

Operators

operator ==(YCbCr, YCbCr)

Compares two YCbCr objects for equality.

public static bool operator ==(YCbCr left, YCbCr right)

Parameters

left YCbCr

The YCbCr on the left side of the operand.

right YCbCr

The YCbCr on the right side of the operand.

Returns

bool

True if the current left is equal to the right parameter; otherwise, false.

operator !=(YCbCr, YCbCr)

Compares two YCbCr objects for inequality.

public static bool operator !=(YCbCr left, YCbCr right)

Parameters

left YCbCr

The YCbCr on the left side of the operand.

right YCbCr

The YCbCr on the right side of the operand.

Returns

bool

True if the current left is unequal to the right parameter; otherwise, false.