Graphics.GetNearestColor Method (Color)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets the nearest color to the specified Color structure.

Namespace:   System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public Color GetNearestColor(
	Color color


Type: System.Drawing.Color

Color structure for which to find a match.

Return Value

Type: System.Drawing.Color

A Color structure that represents the nearest color to the one specified with the color parameter.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates an arbitrary color with ARGB coordinates (255, 165, 63, 136).

  • Creates a solid brush and sets its color to the specified color.

  • Fills an ellipse using the arbitrary color.

  • Creates a second color and sets its value to the nearest system ARGB color.

  • Fills a second ellipse with this color.

The result is two ellipses: the first drawn with the arbitrary specified color and the second drawn with the system color nearest the specified color.

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);

.NET Framework
Available since 1.1
Return to top