Struct Rgba32
Packed pixel type containing four 8-bit unsigned normalized values ranging from 0 to 255. The color components are stored in red, green, blue, and alpha order (least significant to most significant byte).
Ranges from [0, 0, 0, 0] to [1, 1, 1, 1] in vector form.
Inherited Members
Namespace: SixLabors.ImageSharp.PixelFormats
Assembly: SixLabors.ImageSharp.dll
Syntax
public struct Rgba32 : IPixel<Rgba32>, IEquatable<Rgba32>, IPackedVector<uint>, IPixel
Remarks
This struct is fully mutable. This is done (against the guidelines) for the sake of performance, as it avoids the need to create new values for modification operations.
Constructors
| Edit this page View SourceRgba32(byte, byte, byte)
Initializes a new instance of the Rgba32 struct.
Declaration
public Rgba32(byte r, byte g, byte b)
Parameters
Type | Name | Description |
---|---|---|
byte | r | The red component. |
byte | g | The green component. |
byte | b | The blue component. |
Rgba32(byte, byte, byte, byte)
Initializes a new instance of the Rgba32 struct.
Declaration
public Rgba32(byte r, byte g, byte b, byte a)
Parameters
Type | Name | Description |
---|---|---|
byte | r | The red component. |
byte | g | The green component. |
byte | b | The blue component. |
byte | a | The alpha component. |
Rgba32(Vector3)
Initializes a new instance of the Rgba32 struct.
Declaration
public Rgba32(Vector3 vector)
Parameters
Type | Name | Description |
---|---|---|
Vector3 | vector | The vector containing the components for the packed vector. |
Rgba32(Vector4)
Initializes a new instance of the Rgba32 struct.
Declaration
public Rgba32(Vector4 vector)
Parameters
Type | Name | Description |
---|---|---|
Vector4 | vector | The vector containing the components for the packed vector. |
Rgba32(float, float, float, float)
Initializes a new instance of the Rgba32 struct.
Declaration
public Rgba32(float r, float g, float b, float a = 1)
Parameters
Type | Name | Description |
---|---|---|
float | r | The red component. |
float | g | The green component. |
float | b | The blue component. |
float | a | The alpha component. |
Rgba32(uint)
Initializes a new instance of the Rgba32 struct.
Declaration
public Rgba32(uint packed)
Parameters
Type | Name | Description |
---|---|---|
uint | packed | The packed value. |
Fields
| Edit this page View SourceA
Gets or sets the alpha component.
Declaration
public byte A
Field Value
Type | Description |
---|---|
byte |
B
Gets or sets the blue component.
Declaration
public byte B
Field Value
Type | Description |
---|---|
byte |
G
Gets or sets the green component.
Declaration
public byte G
Field Value
Type | Description |
---|---|
byte |
R
Gets or sets the red component.
Declaration
public byte R
Field Value
Type | Description |
---|---|
byte |
Properties
| Edit this page View SourceBgr
Gets or sets the RGB components of this struct as Bgr24 reverting the component order.
Declaration
public Bgr24 Bgr { readonly get; set; }
Property Value
Type | Description |
---|---|
Bgr24 |
PackedValue
Gets or sets the packed representation of the value.
Declaration
public uint PackedValue { readonly get; set; }
Property Value
Type | Description |
---|---|
uint |
Rgb
Gets or sets the RGB components of this struct as Rgb24
Declaration
public Rgb24 Rgb { readonly get; set; }
Property Value
Type | Description |
---|---|
Rgb24 |
Rgba
Gets or sets the packed representation of the Rgba32 struct.
Declaration
public uint Rgba { readonly get; set; }
Property Value
Type | Description |
---|---|
uint |
Methods
| Edit this page View SourceCreatePixelOperations()
Creates a PixelOperations<TPixel> instance for this pixel type. This method is not intended to be consumed directly. Use Instance instead.
Declaration
public readonly PixelOperations<Rgba32> CreatePixelOperations()
Returns
Type | Description |
---|---|
PixelOperations<Rgba32> | The PixelOperations<TPixel> instance. |
Equals(Rgba32)
Indicates whether the current object is equal to another object of the same type.
Declaration
public readonly bool Equals(Rgba32 other)
Parameters
Type | Name | Description |
---|---|---|
Rgba32 | other | An object to compare with this object. |
Returns
Type | Description |
---|---|
bool | true if the current object is equal to the |
Equals(object?)
Indicates whether this instance and a specified object are equal.
Declaration
public override readonly bool Equals(object? obj)
Parameters
Type | Name | Description |
---|---|---|
object | obj | The object to compare with the current instance. |
Returns
Type | Description |
---|---|
bool | true if |
Overrides
| Edit this page View SourceFromAbgr32(Abgr32)
Initializes the pixel instance from an Abgr32 value.
Declaration
public void FromAbgr32(Abgr32 source)
Parameters
Type | Name | Description |
---|---|---|
Abgr32 | source | The Abgr32 value. |
FromArgb32(Argb32)
Initializes the pixel instance from an Argb32 value.
Declaration
public void FromArgb32(Argb32 source)
Parameters
Type | Name | Description |
---|---|---|
Argb32 | source | The Argb32 value. |
FromBgr24(Bgr24)
Initializes the pixel instance from an Bgr24 value.
Declaration
public void FromBgr24(Bgr24 source)
Parameters
Type | Name | Description |
---|---|---|
Bgr24 | source | The Bgr24 value. |
FromBgra32(Bgra32)
Initializes the pixel instance from an Bgra32 value.
Declaration
public void FromBgra32(Bgra32 source)
Parameters
Type | Name | Description |
---|---|---|
Bgra32 | source | The Bgra32 value. |
FromBgra5551(Bgra5551)
Initializes the pixel instance from an Bgra5551 value.
Declaration
public void FromBgra5551(Bgra5551 source)
Parameters
Type | Name | Description |
---|---|---|
Bgra5551 | source | The Bgra5551 value. |
FromL16(L16)
Initializes the pixel instance from an L16 value.
Declaration
public void FromL16(L16 source)
Parameters
Type | Name | Description |
---|---|---|
L16 | source | The L16 value. |
FromL8(L8)
Initializes the pixel instance from an L8 value.
Declaration
public void FromL8(L8 source)
Parameters
Type | Name | Description |
---|---|---|
L8 | source | The L8 value. |
FromLa16(La16)
Initializes the pixel instance from an La16 value.
Declaration
public void FromLa16(La16 source)
Parameters
Type | Name | Description |
---|---|---|
La16 | source | The La16 value. |
FromLa32(La32)
Initializes the pixel instance from an La32 value.
Declaration
public void FromLa32(La32 source)
Parameters
Type | Name | Description |
---|---|---|
La32 | source | The La32 value. |
FromRgb24(Rgb24)
Initializes the pixel instance from an Rgb24 value.
Declaration
public void FromRgb24(Rgb24 source)
Parameters
Type | Name | Description |
---|---|---|
Rgb24 | source | The Rgb24 value. |
FromRgb48(Rgb48)
Initializes the pixel instance from an Rgb48 value.
Declaration
public void FromRgb48(Rgb48 source)
Parameters
Type | Name | Description |
---|---|---|
Rgb48 | source | The Rgb48 value. |
FromRgba32(Rgba32)
Initializes the pixel instance from an Rgba32 value.
Declaration
public void FromRgba32(Rgba32 source)
Parameters
Type | Name | Description |
---|---|---|
Rgba32 | source | The Rgba32 value. |
FromRgba64(Rgba64)
Initializes the pixel instance from an Rgba64 value.
Declaration
public void FromRgba64(Rgba64 source)
Parameters
Type | Name | Description |
---|---|---|
Rgba64 | source | The Rgba64 value. |
FromScaledVector4(Vector4)
Initializes the pixel instance from a generic ("scaled") Vector4.
Declaration
public void FromScaledVector4(Vector4 vector)
Parameters
Type | Name | Description |
---|---|---|
Vector4 | vector | The vector to load the pixel from. |
FromVector4(Vector4)
Initializes the pixel instance from a Vector4 which is specific to the current pixel type.
Declaration
public void FromVector4(Vector4 vector)
Parameters
Type | Name | Description |
---|---|---|
Vector4 | vector | The vector to load the pixel from. |
GetHashCode()
Returns the hash code for this instance.
Declaration
public override readonly int GetHashCode()
Returns
Type | Description |
---|---|
int | A 32-bit signed integer that is the hash code for this instance. |
Overrides
| Edit this page View SourceParseHex(string)
Creates a new instance of the Rgba32 struct from the given hexadecimal string.
Declaration
public static Rgba32 ParseHex(string hex)
Parameters
Type | Name | Description |
---|---|---|
string | hex | The hexadecimal representation of the combined color components arranged in rgb, rgba, rrggbb, or rrggbbaa format to match web syntax. |
Returns
Type | Description |
---|---|
Rgba32 | The Rgba32. |
Exceptions
Type | Condition |
---|---|
ArgumentException | Hexadecimal string is not in the correct format. |
ToHex()
Converts the value of this instance to a hexadecimal string.
Declaration
public readonly string ToHex()
Returns
Type | Description |
---|---|
string | A hexadecimal string representation of the value. |
ToRgba32(ref Rgba32)
Convert the pixel instance into Rgba32 representation.
Declaration
public void ToRgba32(ref Rgba32 dest)
Parameters
Type | Name | Description |
---|---|---|
Rgba32 | dest | The reference to the destination Rgba32 pixel |
ToScaledVector4()
Expands the pixel into a generic ("scaled") Vector4 representation
with values scaled and clamped between
Declaration
public readonly Vector4 ToScaledVector4()
Returns
Type | Description |
---|---|
Vector4 | The Vector4. |
ToString()
Returns the fully qualified type name of this instance.
Declaration
public override readonly string ToString()
Returns
Type | Description |
---|---|
string | The fully qualified type name. |
Overrides
| Edit this page View SourceToVector4()
Expands the pixel into a Vector4 which is specific to the current pixel type. The vector components are typically expanded in least to greatest significance order.
Declaration
public readonly Vector4 ToVector4()
Returns
Type | Description |
---|---|
Vector4 | The Vector4. |
TryParseHex(string?, out Rgba32)
Attempts to creates a new instance of the Rgba32 struct from the given hexadecimal string.
Declaration
public static bool TryParseHex(string? hex, out Rgba32 result)
Parameters
Type | Name | Description |
---|---|---|
string | hex | The hexadecimal representation of the combined color components arranged in rgb, rgba, rrggbb, or rrggbbaa format to match web syntax. |
Rgba32 | result | When this method returns, contains the Rgba32 equivalent of the hexadecimal input. |
Returns
Type | Description |
---|---|
bool | The bool. |
Operators
| Edit this page View Sourceoperator ==(Rgba32, Rgba32)
Compares two Rgba32 objects for equality.
Declaration
public static bool operator ==(Rgba32 left, Rgba32 right)
Parameters
Type | Name | Description |
---|---|---|
Rgba32 | left | The Rgba32 on the left side of the operand. |
Rgba32 | right | The Rgba32 on the right side of the operand. |
Returns
Type | Description |
---|---|
bool | True if the |
implicit operator Rgba32(Color)
Declaration
public static implicit operator Rgba32(Color color)
Parameters
Type | Name | Description |
---|---|---|
Color | color | The Color. |
Returns
Type | Description |
---|---|
Rgba32 | The Rgba32. |
implicit operator Rgba32(Rgb)
Declaration
public static implicit operator Rgba32(Rgb color)
Parameters
Type | Name | Description |
---|---|---|
Rgb | color | The instance of Rgb to convert. |
Returns
Type | Description |
---|---|
Rgba32 | An instance of Rgba32. |
implicit operator Color(Rgba32)
Declaration
public static implicit operator Color(Rgba32 source)
Parameters
Type | Name | Description |
---|---|---|
Rgba32 | source | The Rgba32. |
Returns
Type | Description |
---|---|
Color | The Color. |
operator !=(Rgba32, Rgba32)
Compares two Rgba32 objects for equality.
Declaration
public static bool operator !=(Rgba32 left, Rgba32 right)
Parameters
Type | Name | Description |
---|---|---|
Rgba32 | left | The Rgba32 on the left side of the operand. |
Rgba32 | right | The Rgba32 on the right side of the operand. |
Returns
Type | Description |
---|---|
bool | True if the |