Color.GetBrightness Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u de lichtheidswaarde voor hue-saturation-lightness (HSL) op voor deze Color structuur.
public:
float GetBrightness();
public float GetBrightness();
member this.GetBrightness : unit -> single
Public Function GetBrightness () As Single
Retouren
De lichtheid van dit Color. De lichtheid varieert van 0,0 tot en met 1.0, waarbij 0,0 zwart en 1,0 wit vertegenwoordigt.
Voorbeelden
Het volgende codevoorbeeld is ontworpen voor gebruik met Windows Forms en vereist PaintEventArgse, een parameter van de Paint gebeurtenis-handler. De code voert de volgende acties uit:
Hiermee maakt u een instantie van een Color structuur,
redShadedie moet worden gebruikt voor vergelijkingen.Doorloopt de KnownColor opsommingselementen om alle bekende kleuren te vinden die dezelfde lichtheid hebben als
redShade. De iteraties worden beƫindigd wanneer er 15 overeenkomsten worden gevonden of de waarde van de lusteller groter is dan het laatste KnownColor element.Tijdens elke iteratie wordt het KnownColor element opgeslagen , als dit overeenkomt met de criteria - in een matrix.
Gebruikt een penseel om rechthoeken te schilderen.
De eerste rechthoek is geschilderd de kleur die wordt vertegenwoordigd door redShade. Elk van de andere rechthoeken is een KnownColor geschilderd die overeenkomt met de lichtheid van de redShade.
void KnownColorBrightnessExample2( PaintEventArgs^ e )
{
Graphics^ g = e->Graphics;
// Color structures. One is a variable used for temporary storage. The other
// is a constant used for comparisons.
Color someColor = Color::FromArgb( 0 );
Color redShade = Color::FromArgb( 255, 200, 0, 100 );
// Array to store KnownColor values that match the brightness of the
// redShade color.
array<KnownColor>^colorMatches = gcnew array<KnownColor>(15);
// Number of matches found.
int count = 0;
// Iterate through the KnownColor enums until 15 matches are found.
for ( KnownColor enumValue = (KnownColor)0; enumValue <= KnownColor::YellowGreen && count < 15; enumValue = enumValue + (KnownColor)1 )
{
someColor = Color::FromKnownColor( enumValue );
if ( someColor.GetBrightness() == redShade.GetBrightness() )
colorMatches[ count++ ] = enumValue;
}
// display the redShade color and its argb value.
SolidBrush^ myBrush1 = gcnew SolidBrush( redShade );
System::Drawing::Font^ myFont = gcnew System::Drawing::Font( "Arial",12 );
int x = 20;
int y = 20;
someColor = redShade;
g->FillRectangle( myBrush1, x, y, 100, 30 );
g->DrawString( someColor.ToString(), myFont, Brushes::Black, (float)x + 120, (float)y );
// Iterate through the matches that were found and display each color that
// corresponds with the enum value in the array. also display the name of
// The KnownColor.
for ( int i = 0; i < count; i++ )
{
y += 40;
someColor = Color::FromKnownColor( colorMatches[ i ] );
myBrush1->Color = someColor;
g->FillRectangle( myBrush1, x, y, 100, 30 );
g->DrawString( someColor.ToString(), myFont, Brushes::Black, (float)x + 120, (float)y );
}
}
public void KnownColorBrightnessExample2(PaintEventArgs e)
{
Graphics g = e.Graphics;
// Color structures. One is a variable used for temporary storage. The other
// is a constant used for comparisons.
Color someColor = Color.FromArgb(0);
Color redShade = Color.FromArgb(255, 200, 0, 100);
// Array to store KnownColor values that match the brightness of the
// redShade color.
KnownColor[] colorMatches = new KnownColor[15];
// Number of matches found.
int count = 0;
// Iterate through the KnownColor enums until 15 matches are found.
for (KnownColor enumValue = 0;
enumValue <= KnownColor.YellowGreen && count < 15; enumValue++)
{
someColor = Color.FromKnownColor(enumValue);
if (someColor.GetBrightness() == redShade.GetBrightness())
colorMatches[count++] = enumValue;
}
// display the redShade color and its argb value.
SolidBrush myBrush1 = new SolidBrush(redShade);
Font myFont = new Font("Arial", 12);
int x = 20;
int y = 20;
someColor = redShade;
g.FillRectangle(myBrush1, x, y, 100, 30);
g.DrawString(someColor.ToString(), myFont, Brushes.Black, x + 120, y);
// Iterate through the matches that were found and display each color that
// corresponds with the enum value in the array. also display the name of
// The KnownColor.
for (int i = 0; i < count; i++)
{
y += 40;
someColor = Color.FromKnownColor(colorMatches[i]);
myBrush1.Color = someColor;
g.FillRectangle(myBrush1, x, y, 100, 30);
g.DrawString(someColor.ToString(), myFont, Brushes.Black, x + 120, y);
}
}
Public Sub KnownColorBrightnessExample2(ByVal e As PaintEventArgs)
Dim g As Graphics = e.Graphics
' Color structures. One is used for temporary storage. The other
' is a constant used for comparisons.
Dim someColor As Color = Color.FromArgb(0)
Dim redShade As Color = Color.FromArgb(255, 200, 0, 100)
' Array to store KnownColor values that match the brightness of the
' redShade color.
Dim colorMatches(15) As KnownColor
' Number of matches found.
Dim count As Integer = 0
' iterate through the KnownColor enums until 15 matches are found.
Dim enumValue As KnownColor
For enumValue = 0 To KnownColor.YellowGreen
someColor = Color.FromKnownColor(enumValue)
If (someColor.GetBrightness()) = (redShade.GetBrightness()) Then
colorMatches(count) = enumValue
count += 1
If count > 15 Then
Exit For
End If
End If
Next enumValue
' Display the redShade color and its argb value.
Dim myBrush1 As New SolidBrush(redShade)
Dim myFont As New Font("Arial", 12)
Dim x As Integer = 20
Dim y As Integer = 20
someColor = redShade
g.FillRectangle(myBrush1, x, y, 100, 30)
g.DrawString(someColor.ToString(), myFont, Brushes.Black, _
x + 120, y)
' Iterate through the matches that were found and display each
' color that corresponds with the enum value in the array.
' Display the name of the KnownColor.
Dim i As Integer
For i = 0 To count - 1
y += 40
someColor = Color.FromKnownColor(colorMatches(i))
myBrush1.Color = someColor
g.FillRectangle(myBrush1, x, y, 100, 30)
g.DrawString(someColor.ToString(), myFont, Brushes.Black, _
x + 120, y)
Next i
End Sub