The FIRGBF structure describes a color consisting of relative intensities of red, green, blue and alpha value. Each single color component consumes 32 bits and takes values in the range from 0 to 1.

Namespace:  FreeImageAPI
Assembly:  FreeImageNET (in FreeImageNET.dll)

Syntax

C#
[SerializableAttribute]
public struct FIRGBF : IComparable, IComparable<FIRGBF>, 
	IEquatable<FIRGBF>
Visual Basic (Declaration)
<SerializableAttribute> _
Public Structure FIRGBF _
	Implements IComparable, IComparable(Of FIRGBF),  _
	IEquatable(Of FIRGBF)
Visual C++
[SerializableAttribute]
public value class FIRGBF : IComparable, 
	IComparable<FIRGBF>, IEquatable<FIRGBF>

Remarks

The FIRGBF structure provides access to an underlying FreeImage FIRGBF structure. To determine the red, green or blue component of a color, use the red, green or blue fields, respectively.

For easy integration of the underlying structure into the .NET framework, the FIRGBF structure implements implicit conversion operators to convert the represented color to and from the Color type. This makes the Color type a real replacement for the FIRGBF structure and my be used in all situations which require an FIRGBF type.

Each color component alpha, red, green or blue of FIRGBF is translated into it's corresponding color component A, R, G or B of Color by linearly mapping the values of one range into the other range and vice versa. When converting from Color into FIRGBF, the color's alpha value is ignored and assumed to be 255 when converting from FIRGBF into Color, creating a fully opaque color.

Conversion from System.Drawing.Color to FIRGBF

FIRGBF.component = (float)Color.component / 255f

Conversion from FIRGBF to System.Drawing.Color

Color.component = (int)(FIRGBF.component * 255f)

The same conversion is also applied when the Color property or the FIRGBF(Color) constructor is invoked.

Examples

The following code example demonstrates the various conversions between the FIRGBF structure and the Color structure.
CopyC#
FIRGBF firgbf;
// Initialize the structure using a native .NET Color structure.
firgbf = new FIRGBF(Color.Indigo);
// Initialize the structure using the implicit operator.
firgbf = Color.DarkSeaGreen;
// Convert the FIRGBF instance into a native .NET Color
// using its implicit operator.
Color color = firgbf;
// Using the structure's Color property for converting it
// into a native .NET Color.
Color another = firgbf.Color;

Version Information

FreeImage.NET

Supported in: 3.11.0, 3.12.0, 3.13.0, 3.13.1

See Also