Aracılığıyla paylaş


Graphics.GetNearestColor(Color) Yöntem

Tanım

Belirtilen Color yapısına en yakın rengi alır.

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

Parametreler

color
Color

Eşleşme bulunacak yapıyı Color.

Döndürülenler

color parametresiyle belirtilene en yakın rengi temsil eden Color yapısı.

Örnekler

Aşağıdaki kod örneği Windows Forms ile kullanılmak üzere tasarlanmıştır ve Paint olay işleyicisinin bir parametresi olan PaintEventArgsegerektirir. Kod aşağıdaki eylemleri gerçekleştirir:

  • ARGB koordinatlarıyla rastgele bir renk oluşturur (255, 165, 63, 136).

  • Düz bir fırça oluşturur ve rengini belirtilen renge ayarlar.

  • Rastgele rengi kullanarak bir elips doldurur.

  • İkinci bir renk oluşturur ve değerini en yakın sistem ARGB rengine ayarlar.

  • bu renkle ikinci bir üç nokta doldurur.

Sonuç iki üç noktadır: ilki rastgele belirtilen renkle, ikincisi ise belirtilen renge en yakın sistem rengiyle çizilir.

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

Şunlara uygulanır