Graphics.GetNearestColor(Color) Metoda

Definicja

Pobiera najbliższy kolor określonej Color struktury.

public:
 System::Drawing::Color GetNearestColor(System::Drawing::Color color);
public System.Drawing.Color GetNearestColor (System.Drawing.Color color);
member this.GetNearestColor : System.Drawing.Color -> System.Drawing.Color
Public Function GetNearestColor (color As Color) As Color

Parametry

color
Color

Color struktura, dla której należy znaleźć dopasowanie.

Zwraca

Color

Struktura Color reprezentująca najbliższy kolor określony za pomocą parametru color .

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z Windows Forms i wymaga PaintEventArgs eparametru Paint programu obsługi zdarzeń. Kod wykonuje następujące akcje:

  • Tworzy dowolny kolor ze współrzędnymi ARGB (255, 165, 63, 136).

  • Tworzy solidny pędzel i ustawia jego kolor na określony kolor.

  • Wypełnia wielokropek przy użyciu dowolnego koloru.

  • Tworzy drugi kolor i ustawia jego wartość na najbliższy systemowy kolor ARGB.

  • Wypełnia drugi wielokropek tym kolorem.

Wynik to dwa wielokropki: pierwszy narysowany z dowolnym określonym kolorem, a drugi narysowany z kolorem systemowym najbliżej określonego koloru.

public:
   void GetNearestColorColor( PaintEventArgs^ e )
   {
      // Create solid brush with arbitrary color.
      Color arbColor = Color::FromArgb( 255, 165, 63, 136 );
      SolidBrush^ arbBrush = gcnew SolidBrush( arbColor );

      // Fill ellipse on screen.
      e->Graphics->FillEllipse( arbBrush, 0, 0, 200, 100 );

      // Get nearest color.
      Color realColor = e->Graphics->GetNearestColor( arbColor );
      SolidBrush^ realBrush = gcnew SolidBrush( realColor );

      // Fill ellipse on screen.
      e->Graphics->FillEllipse( realBrush, 0, 100, 200, 100 );
   }
private void GetNearestColorColor(PaintEventArgs e)
{
    // Create solid brush with arbitrary color.
    Color arbColor = Color.FromArgb(255, 165, 63, 136);
    SolidBrush arbBrush = new SolidBrush(arbColor);

    // Fill ellipse on screen.
    e.Graphics.FillEllipse(arbBrush, 0, 0, 200, 100);

    // Get nearest color.
    Color realColor = e.Graphics.GetNearestColor(arbColor);
    SolidBrush realBrush = new SolidBrush(realColor);

    // Fill ellipse on screen.
    e.Graphics.FillEllipse(realBrush, 0, 100, 200, 100);
}
Private Sub GetNearestColorColor(ByVal e As PaintEventArgs)

    ' Create solid brush with arbitrary color.
    Dim arbColor As Color = Color.FromArgb(255, 165, 63, 136)
    Dim arbBrush As New SolidBrush(arbColor)

    ' Fill ellipse on screen.
    e.Graphics.FillEllipse(arbBrush, 0, 0, 200, 100)

    ' Get nearest color.
    Dim realColor As Color = e.Graphics.GetNearestColor(arbColor)
    Dim realBrush As New SolidBrush(realColor)

    ' Fill ellipse on screen.
    e.Graphics.FillEllipse(realBrush, 0, 100, 200, 100)
End Sub

Dotyczy