次の方法で共有


Graphics.GetNearestColor メソッド

指定した Color 構造体に最も近い色を取得します。

Public Function GetNearestColor( _
   ByVal color As Color _) As Color
[C#]
public Color GetNearestColor(Colorcolor);
[C++]
public: Color GetNearestColor(Colorcolor);
[JScript]
public function GetNearestColor(
   color : Color) : Color;

パラメータ

  • color
    一致する対象を検索する Color 構造体。

戻り値

このメソッドは、 color パラメータで指定された色に最も近い色を表す Color 構造体を返します。

使用例

[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 Paint イベント ハンドラのパラメータである PaintEventArgs e が必要です。このコードは次のアクションを実行します。

  • ARGB 座標 (255, 165, 63, 136) で任意の色を作成します。
  • ソリッド ブラシを作成し、その色を指定の色に設定します。
  • 任意の色を使用して、楕円を塗りつぶします。
  • 2 つ目の色を作成し、その値を最も近いシステム ARGB カラーに設定します。
  • 2 つ目の楕円をこの色で塗りつぶします。

[Visual Basic, C#] 指定した任意の色で描画された楕円と、指定した色に最も近いシステム カラーで描画された楕円が生成されます。

 
Public Sub GetNearestColorColor(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
        
[C#] 
public 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);
}
        

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

Graphics クラス | Graphics メンバ | System.Drawing 名前空間