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 |