xtd - Reference Guide  0.1.0 Modern c++17 framework to create console, gui and unit test applications on Windows, macOS and Linux.
xtd::drawing::color Class Reference

Represents an ARGB (alpha, red, green, blue) color. More...

#include <color.h>

## Public Member Functions

color ()=default
Create a new instance of class xtd::drawing::color. More...

uint8_t a () const
Gets the alpha component value of this xtd::drawing::color class. More...

uint8_t b () const
Gets the blue component value of this xtd::drawing::color class. More...

uint8_t g () const
Gets the green component value of this xtd::drawing::color class. More...

float get_brightness () const
Gets the hue-saturation-brightness (HSB) brightness value for this xtd::drawing::color structure. More...

float get_hue () const
Gets the hue-saturation-brightness (HSB) hue value, in degrees, for this xtd::drawing::color structure. More...

float get_lightness () const
Gets the hue-saturation-lightness (HSL) lightness value for this xtd::drawing::color structure. More...

float get_saturation () const
Gets the hue-saturation-brightness (HSB) saturation value for this xtd::drawing::color structure. More...

intptr_t handle () const
Gets the native handle of this xtd::drawing::color class. More...

bool is_empty () const
Specifies whether this xtd::drawing::color class is uninitialized. More...

bool is_known_color () const
Gets a value indicating whether this xtd::drawing::color structure is a predefined color. Predefined colors are represented by the elements of the xtd::drawing::known_color enumeration. More...

bool is_named_color () const
Gets a value indicating whether this xtd::drawing::color structure is a named color or a member of the xtd::drawing::known_color enumeration. More...

bool is_system_color () const
Gets a value indicating whether this xtd::drawing::color structure is a system color. A system color is a color that is used in a Windows display element. System colors are represented by elements of the xtd::drawing::known_color enumeration. More...

std::string name () const
Gets the name of this xtd::drawing::color. More...

uint8_t r () const
Gets the red component value of this xtd::drawing::color class. More...

uint32_t to_argb () const
Gets the 32-bit ARGB value of this xtd::drawing::color class. More...

xtd::drawing::known_color to_known_color () const
Gets the xtd::drawing::known_color value of this xtd::drawing::color class. More...

std::string to_string () const
reates a human-readable string that represents this color class. More...

## Static Public Member Functions

static color average (const color &color1, const color &color2, double weight, bool average_alpha)
Returns the weighted average color between the two given colors. More...

static color average (const color &color1, const color &color2, double weight)
Returns the weighted average color between the two given colors. More...

static color dark (const color &color, double weight)
Returns a darker version of the specified color. More...

static color dark (const color &color)
Returns a darker version of the specified color. More...

static xtd::drawing::color from_argb (uint32_t argb)
Creates a xtd::drawing::color class from a 32-bit ARGB value. More...

static xtd::drawing::color from_argb (uint8_t alpha, const xtd::drawing::color &baseColor)
Creates a xtd::drawing::color class from the specified xtd::drawing::color structure, but with the new specified alpha value. Although this method allows a 32-bit value to be passed for the alpha value, the value is limited to 8 bits. More...

static xtd::drawing::color from_argb (uint8_t alpha, uint8_t red, uint8_t green, uint8_t blue)
Creates a xtd::drawing::color class from the four ARGB component (alpha, red, green, and blue) values. Although this method allows a 32-bit value to be passed for each component, the value of each component is limited to 8 bits. More...

static xtd::drawing::color from_argb (uint8_t red, uint8_t green, uint8_t blue)
Creates a xtd::drawing::color structure from the specified 8-bit color values (red, green, and blue). The alpha value is implicitly 255 (fully opaque). Although this method allows a 32-bit value to be passed for each color component, the value of each component is limited to 8 bits. More...

static xtd::drawing::color from_handle (intptr_t handle)
Creates a xtd::drawing::color class from native handle. More...

static xtd::drawing::color from_hsb (float hue, float saturation, float brightness)
Creates a xtd::drawing::color class from the three HSV component (hue, saturation, and brightness) values. More...

static xtd::drawing::color from_hsl (float hue, float saturation, float lightness)
Creates a xtd::drawing::color class from the three HSL component (hue, saturation, and lightness) values. More...

static xtd::drawing::color from_known_color (xtd::drawing::known_color color)
Creates a xtd::drawing::color class from the four ARGB component (alpha, red, green, and blue) values. Although this method allows a 32-bit value to be passed for each component, the value of each component is limited to 8 bits. More...

static xtd::drawing::color from_name (const std::string &name)
Creates a xtd::drawing::color class from the specified name of a predefined color. More...

static color light (const color &color, double weight)
Returns a lighter version of the specified color. More...

static color light (const color &color)
Returns a lighter version of the specified color. More...

## Static Public Attributes

static const xtd::drawing::color alice_blue
Gets a system-defined color that has an ARGB value of 0xFFF0F8FF. This field is constant. More...

static const xtd::drawing::color antique_white
Gets a system-defined color that has an ARGB value of 0xFFFAEBD7. This field is constant. More...

static const xtd::drawing::color aqua
Gets a system-defined color that has an ARGB value of 0xFF00FFFF. This field is constant. More...

static const xtd::drawing::color aquamarine
Gets a system-defined color that has an ARGB value of 0xFF7FFFD4. This field is constant. More...

static const xtd::drawing::color azure
Gets a system-defined color that has an ARGB value of 0xFFF0FFFF. This field is constant. More...

static const xtd::drawing::color beige
Gets a system-defined color that has an ARGB value of 0xFFF5F5DC. This field is constant. More...

static const xtd::drawing::color bisque
Gets a system-defined color that has an ARGB value of 0xFFFFE4C4. This field is constant. More...

static const xtd::drawing::color black
Gets a system-defined color that has an ARGB value of 0xFF000000. This field is constant. More...

static const xtd::drawing::color blanched_almond
Gets a system-defined color that has an ARGB value of 0xFFFFEBCD. This field is constant. More...

static const xtd::drawing::color blue
Gets a system-defined color that has an ARGB value of 0xFF0000FF. This field is constant. More...

static const xtd::drawing::color blue_violet
Gets a system-defined color that has an ARGB value of 0xFF8A2BE2. This field is constant. More...

static const xtd::drawing::color brown
Gets a system-defined color that has an ARGB value of 0xFFA52A2A. This field is constant. More...

static const xtd::drawing::color burly_wood
Gets a system-defined color that has an ARGB value of 0xFFDEB887. This field is constant. More...

Gets a system-defined color that has an ARGB value of 0xFF5F9EA0. This field is constant. More...

static const xtd::drawing::color chartreuse
Gets a system-defined color that has an ARGB value of 0xFF7FFF00. This field is constant. More...

static const xtd::drawing::color chocolate
Gets a system-defined color that has an ARGB value of 0xFFD2691E. This field is constant. More...

static const xtd::drawing::color coral
Gets a system-defined color that has an ARGB value of 0xFFFF7F50. This field is constant. More...

static const xtd::drawing::color cornflower_blue
Gets a system-defined color that has an ARGB value of 0xFF6495ED. This field is constant. More...

static const xtd::drawing::color cornsilk
Gets a system-defined color that has an ARGB value of 0xFFFFF8DC. This field is constant. More...

static const xtd::drawing::color crimson
Gets a system-defined color that has an ARGB value of 0xFFDC143C. This field is constant. More...

static const xtd::drawing::color cyan
Gets a system-defined color that has an ARGB value of 0xFF00FFFF. This field is constant. More...

static const xtd::drawing::color dark_blue
Gets a system-defined color that has an ARGB value of 0xFF00008B. This field is constant. More...

static const xtd::drawing::color dark_cyan
Gets a system-defined color that has an ARGB value of 0xFF008B8B. This field is constant. More...

static const xtd::drawing::color dark_goldenrod
Gets a system-defined color that has an ARGB value of 0xFFB8860B. This field is constant. More...

static const xtd::drawing::color dark_gray
Gets a system-defined color that has an ARGB value of 0xFFA9A9A9. This field is constant. More...

static const xtd::drawing::color dark_green
Gets a system-defined color that has an ARGB value of 0xFF006400. This field is constant. More...

static const xtd::drawing::color dark_khaki
Gets a system-defined color that has an ARGB value of 0xFFBDB76B. This field is constant. More...

static const xtd::drawing::color dark_magenta
Gets a system-defined color that has an ARGB value of 0xFF8B008B. This field is constant. More...

static const xtd::drawing::color dark_olive_green
Gets a system-defined color that has an ARGB value of 0xFF556B2F. This field is constant. More...

static const xtd::drawing::color dark_orange
Gets a system-defined color that has an ARGB value of 0xFFFF8C00. This field is constant. More...

static const xtd::drawing::color dark_orchid
Gets a system-defined color that has an ARGB value of 0xFF9932CC. This field is constant. More...

static const xtd::drawing::color dark_red
Gets a system-defined color that has an ARGB value of 0xFF8B0000. This field is constant. More...

static const xtd::drawing::color dark_salmon
Gets a system-defined color that has an ARGB value of 0xFFE9967A. This field is constant. More...

static const xtd::drawing::color dark_sea_green
Gets a system-defined color that has an ARGB value of 0xFF8FBC8B. This field is constant. More...

static const xtd::drawing::color dark_slate_blue
Gets a system-defined color that has an ARGB value of 0xFF483D8B. This field is constant. More...

static const xtd::drawing::color dark_slate_gray
Gets a system-defined color that has an ARGB value of 0xFF2F4F4F. This field is constant. More...

static const xtd::drawing::color dark_turquoise
Gets a system-defined color that has an ARGB value of 0xFF00CED1. This field is constant. More...

static const xtd::drawing::color dark_violet
Gets a system-defined color that has an ARGB value of 0xFF9400D3. This field is constant. More...

static const xtd::drawing::color deep_pink
Gets a system-defined color that has an ARGB value of 0xFFFF1493. This field is constant. More...

static const xtd::drawing::color deep_sky_blue
Gets a system-defined color that has an ARGB value of 0xFF00BFFF. This field is constant. More...

static const xtd::drawing::color dim_gray
Gets a system-defined color that has an ARGB value of 0xFF696969. This field is constant. More...

static const xtd::drawing::color dodger_blue
Gets a system-defined color that has an ARGB value of 0xFF1E90FF. This field is constant. More...

static const xtd::drawing::color empty
Represents a color that is null. More...

static const xtd::drawing::color firebrick
Gets a system-defined color that has an ARGB value of 0xFFB22222. This field is constant. More...

static const xtd::drawing::color floral_white
Gets a system-defined color that has an ARGB value of 0xFFFFFAF0. This field is constant. More...

static const xtd::drawing::color forest_green
Gets a system-defined color that has an ARGB value of 0xFF228B22. This field is constant. More...

static const xtd::drawing::color fuchsia
Gets a system-defined color that has an ARGB value of 0xFFFF00FF. This field is constant. More...

static const xtd::drawing::color gainsboro
Gets a system-defined color that has an ARGB value of 0xFFDCDCDC. This field is constant. More...

static const xtd::drawing::color ghost_white
Gets a system-defined color that has an ARGB value of 0xFFF8F8FF. This field is constant. More...

static const xtd::drawing::color gold
Gets a system-defined color that has an ARGB value of 0xFFFFD700. This field is constant. More...

static const xtd::drawing::color goldenrod
Gets a system-defined color that has an ARGB value of 0xFFDAA520. This field is constant. More...

static const xtd::drawing::color gray
Gets a system-defined color that has an ARGB value of 0xFF808080. This field is constant. More...

static const xtd::drawing::color green
Gets a system-defined color that has an ARGB value of 0xFF008000. This field is constant. More...

static const xtd::drawing::color green_yellow
Gets a system-defined color that has an ARGB value of 0xFFADFF2F. This field is constant. More...

static const xtd::drawing::color honeydew
Gets a system-defined color that has an ARGB value of 0xFFF0FFF0. This field is constant. More...

static const xtd::drawing::color hot_pink
Gets a system-defined color that has an ARGB value of 0xFFFF69B4. This field is constant. More...

static const xtd::drawing::color indian_red
Gets a system-defined color that has an ARGB value of 0xFFCD5C5C. This field is constant. More...

static const xtd::drawing::color indigo
Gets a system-defined color that has an ARGB value of 0xFF4B0082. This field is constant. More...

static const xtd::drawing::color ivory
Gets a system-defined color that has an ARGB value of 0xFFFFFFF0. This field is constant. More...

static const xtd::drawing::color khaki
Gets a system-defined color that has an ARGB value of 0xFFF0E68C. This field is constant. More...

static const xtd::drawing::color lavender
Gets a system-defined color that has an ARGB value of 0xFFE6E6FA. This field is constant. More...

static const xtd::drawing::color lavender_blush
Gets a system-defined color that has an ARGB value of 0xFFFFF0F5. This field is constant. More...

static const xtd::drawing::color lawn_green
Gets a system-defined color that has an ARGB value of 0xFF7CFC00. This field is constant. More...

static const xtd::drawing::color lemon_chiffon
Gets a system-defined color that has an ARGB value of 0xFFFFFACD. This field is constant. More...

static const xtd::drawing::color light_blue
Gets a system-defined color that has an ARGB value of 0xFFADD8E6. This field is constant. More...

static const xtd::drawing::color light_coral
Gets a system-defined color that has an ARGB value of 0xFFF08080. This field is constant. More...

static const xtd::drawing::color light_cyan
Gets a system-defined color that has an ARGB value of 0xFFE0FFFF. This field is constant. More...

static const xtd::drawing::color light_goldenrod_yellow
Gets a system-defined color that has an ARGB value of 0xFFFAFAD2. This field is constant. More...

static const xtd::drawing::color light_gray
Gets a system-defined color that has an ARGB value of 0xFFD3D3D3. This field is constant. More...

static const xtd::drawing::color light_green
Gets a system-defined color that has an ARGB value of 0xFF90EE90. This field is constant. More...

static const xtd::drawing::color light_pink
Gets a system-defined color that has an ARGB value of 0xFFFFB6C1. This field is constant. More...

static const xtd::drawing::color light_salmon
Gets a system-defined color that has an ARGB value of 0xFFFFA07A. This field is constant. More...

static const xtd::drawing::color light_sea_green
Gets a system-defined color that has an ARGB value of 0xFF20B2AA. This field is constant. More...

static const xtd::drawing::color light_sky_blue
Gets a system-defined color that has an ARGB value of 0xFF87CEFA. This field is constant. More...

static const xtd::drawing::color light_slate_gray
Gets a system-defined color that has an ARGB value of 0xFF778899. This field is constant. More...

static const xtd::drawing::color light_steel_blue
Gets a system-defined color that has an ARGB value of 0xFFB0C4DE. This field is constant. More...

static const xtd::drawing::color light_yellow
Gets a system-defined color that has an ARGB value of 0xFFFFFFE0. This field is constant. More...

static const xtd::drawing::color lime
Gets a system-defined color that has an ARGB value of 0xFF00FF00. This field is constant. More...

static const xtd::drawing::color lime_green
Gets a system-defined color that has an ARGB value of 0xFF32CD32. This field is constant. More...

static const xtd::drawing::color linen
Gets a system-defined color that has an ARGB value of 0xFFFAF0E6. This field is constant. More...

static const xtd::drawing::color magenta
Gets a system-defined color that has an ARGB value of 0xFFFF00FF. This field is constant. More...

static const xtd::drawing::color maroon
Gets a system-defined color that has an ARGB value of 0xFF800000. This field is constant. More...

static const xtd::drawing::color medium_aquamarine
Gets a system-defined color that has an ARGB value of 0xFF66CDAA. This field is constant. More...

static const xtd::drawing::color medium_blue
Gets a system-defined color that has an ARGB value of 0xFF0000CD. This field is constant. More...

static const xtd::drawing::color medium_orchid
Gets a system-defined color that has an ARGB value of 0xFFBA55D3. This field is constant. More...

static const xtd::drawing::color medium_purple
Gets a system-defined color that has an ARGB value of 0xFF9370DB. This field is constant. More...

static const xtd::drawing::color medium_sea_green
Gets a system-defined color that has an ARGB value of 0xFF3CB371. This field is constant. More...

static const xtd::drawing::color medium_slate_blue
Gets a system-defined color that has an ARGB value of 0xFF7B68EE. This field is constant. More...

static const xtd::drawing::color medium_spring_green
Gets a system-defined color that has an ARGB value of 0xFF00FA9A. This field is constant. More...

static const xtd::drawing::color medium_turquoise
Gets a system-defined color that has an ARGB value of 0xFF48D1CC. This field is constant. More...

static const xtd::drawing::color medium_violet_red
Gets a system-defined color that has an ARGB value of 0xFFC71585. This field is constant. More...

static const xtd::drawing::color midnight_blue
Gets a system-defined color that has an ARGB value of 0xFF191970. This field is constant. More...

static const xtd::drawing::color mint_cream
Gets a system-defined color that has an ARGB value of 0xFFF5FFFA. This field is constant. More...

static const xtd::drawing::color misty_rose
Gets a system-defined color that has an ARGB value of 0xFFFFE4E1. This field is constant. More...

static const xtd::drawing::color moccasin
Gets a system-defined color that has an ARGB value of 0xFFFFE4B5. This field is constant. More...

static const xtd::drawing::color navajo_white
Gets a system-defined color that has an ARGB value of 0xFFFFDEAD. This field is constant. More...

static const xtd::drawing::color navy
Gets a system-defined color that has an ARGB value of 0xFF000080. This field is constant. More...

static const xtd::drawing::color old_lace
Gets a system-defined color that has an ARGB value of 0xFFFDF5E6. This field is constant. More...

static const xtd::drawing::color olive
Gets a system-defined color that has an ARGB value of 0xFF808000. This field is constant. More...

static const xtd::drawing::color olive_drab
Gets a system-defined color that has an ARGB value of 0xFF6B8E23. This field is constant. More...

static const xtd::drawing::color orange
Gets a system-defined color that has an ARGB value of 0xFFFFA500. This field is constant. More...

static const xtd::drawing::color orange_red
Gets a system-defined color that has an ARGB value of 0xFFFF4500. This field is constant. More...

static const xtd::drawing::color orchid
Gets a system-defined color that has an ARGB value of 0xFFDA70D6. This field is constant. More...

static const xtd::drawing::color pale_goldenrod
Gets a system-defined color that has an ARGB value of 0xFFEEE8AA. This field is constant. More...

static const xtd::drawing::color pale_green
Gets a system-defined color that has an ARGB value of 0xFF98FB98. This field is constant. More...

static const xtd::drawing::color pale_turquoise
Gets a system-defined color that has an ARGB value of 0xFFAFEEEE. This field is constant. More...

static const xtd::drawing::color pale_violet_red
Gets a system-defined color that has an ARGB value of 0xFFDB7093. This field is constant. More...

static const xtd::drawing::color papaya_whip
Gets a system-defined color that has an ARGB value of 0xFFFFEFD5. This field is constant. More...

static const xtd::drawing::color peach_puff
Gets a system-defined color that has an ARGB value of 0xFFFFDAB9. This field is constant. More...

static const xtd::drawing::color peru
Gets a system-defined color that has an ARGB value of 0xFFCD853F. This field is constant. More...

static const xtd::drawing::color pink
Gets a system-defined color that has an ARGB value of 0xFFFFC0CB. This field is constant. More...

static const xtd::drawing::color plum
Gets a system-defined color that has an ARGB value of 0xFFDDA0DD. This field is constant. More...

static const xtd::drawing::color powder_blue
Gets a system-defined color that has an ARGB value of 0xFFB0E0E6. This field is constant. More...

static const xtd::drawing::color purple
Gets a system-defined color that has an ARGB value of 0xFF800080. This field is constant. More...

static const xtd::drawing::color rebecca_purple
Gets a system-defined color that has an ARGB value of 0xFF663399. This field is constant. More...

static const xtd::drawing::color red
Gets a system-defined color that has an ARGB value of 0xFFFF0000. This field is constant. More...

static const xtd::drawing::color rosy_brown
Gets a system-defined color that has an ARGB value of 0xFFBC8F8F. This field is constant. More...

static const xtd::drawing::color royal_blue
Gets a system-defined color that has an ARGB value of 0xFF4169E1. This field is constant. More...

Gets a system-defined color that has an ARGB value of 0xFF8B4513. This field is constant. More...

static const xtd::drawing::color salmon
Gets a system-defined color that has an ARGB value of 0xFFFA8072. This field is constant. More...

static const xtd::drawing::color sandy_brown
Gets a system-defined color that has an ARGB value of 0xFFF4A460. This field is constant. More...

static const xtd::drawing::color sea_green
Gets a system-defined color that has an ARGB value of 0xFF2E8B57. This field is constant. More...

static const xtd::drawing::color sea_shell
Gets a system-defined color that has an ARGB value of 0xFFFFF5EE. This field is constant. More...

static const xtd::drawing::color sienna
Gets a system-defined color that has an ARGB value of 0xFFA0522D. This field is constant. More...

static const xtd::drawing::color silver
Gets a system-defined color that has an ARGB value of 0xFFC0C0C0. This field is constant. More...

static const xtd::drawing::color sky_blue
Gets a system-defined color that has an ARGB value of 0xFF87CEEB. This field is constant. More...

static const xtd::drawing::color slate_blue
Gets a system-defined color that has an ARGB value of 0xFF6A5ACD. This field is constant. More...

static const xtd::drawing::color slate_gray
Gets a system-defined color that has an ARGB value of 0xFF708090. This field is constant. More...

static const xtd::drawing::color snow
Gets a system-defined color that has an ARGB value of 0xFFFFFAFA. This field is constant. More...

static const xtd::drawing::color spring_green
Gets a system-defined color that has an ARGB value of 0xFF00FF7F. This field is constant. More...

static const xtd::drawing::color steel_blue
Gets a system-defined color that has an ARGB value of 0xFF4682B4. This field is constant. More...

static const xtd::drawing::color tan
Gets a system-defined color that has an ARGB value of 0xFFD2B48C. This field is constant. More...

static const xtd::drawing::color teal
Gets a system-defined color that has an ARGB value of 0xFF008080. This field is constant. More...

static const xtd::drawing::color thistle
Gets a system-defined color that has an ARGB value of 0xFFD8BFD8. This field is constant. More...

static const xtd::drawing::color tomato
Gets a system-defined color that has an ARGB value of 0xFFFF6347. This field is constant. More...

static const xtd::drawing::color transparent
Gets a system-defined color that has an ARGB value of 0x00FFFFFF. This field is constant. More...

static const xtd::drawing::color turquoise
Gets a system-defined color that has an ARGB value of 0xFF40E0D0. This field is constant. More...

static const xtd::drawing::color violet
Gets a system-defined color that has an ARGB value of 0xFFEE82EE. This field is constant. More...

static const xtd::drawing::color wheat
Gets a system-defined color that has an ARGB value of 0xFFF5DEB3. This field is constant. More...

static const xtd::drawing::color white
Gets a system-defined color that has an ARGB value of 0xFFFFFFFF. This field is constant. More...

static const xtd::drawing::color white_smoke
Gets a system-defined color that has an ARGB value of 0xFFF5F5F5. This field is constant. More...

static const xtd::drawing::color yellow
Gets a system-defined color that has an ARGB value of 0xFFFFFF00. This field is constant. More...

static const xtd::drawing::color yellow_green
Gets a system-defined color that has an ARGB value of 0xFF9ACD32. This field is constant. More...

## Detailed Description

Represents an ARGB (alpha, red, green, blue) color.

Remarks
Named colors are represented by using the properties of the xtd::drawing::color structure. For more information about these colors, see Colors by Name.
The color of each pixel is represented as a 32-bit number: 8 bits each for alpha, red, green, and blue (ARGB). Each of the four components is a number from 0 through 255, with 0 representing no intensity and 255 representing full intensity. The alpha component specifies the transparency of the color: 0 is fully transparent, and 255 is fully opaque. To determine the alpha, red, green, or blue component of a color, use the A, R, G, or B property, respectively. You can create a custom color by using one of the from_argb methods
Examples
The following code example demonstrates the A, R, G, and B properties of a xtd::drawing::color, and the Implicit(size to size_f) member.
This example is designed to be used with a Windows Form (xtd::forms). Paste the code into the form and call the show_properties_of_slate_blue method from the form's paint event-handling method, passing e as paint_event_args.
void show_properties_of_slate_blue(xtd::forms::paint_event_args& e) {
byte g = slate_blue.g();
byte b = slate_blue.b();
byte r = slate_blue.r();
byte a = slate_blue.a();
string text = xtd::strings::format("Slate blue has these ARGB values: alpha:{0}, red:{1}, green: {2}, blue {3}", a, r, g, b);
}

The documentation for this class was generated from the following file: