Bitmap::GetPixel メソッド (gdiplusheaders.h)

Bitmap::GetPixel メソッドは、このビットマップ内の指定されたピクセルの色を取得します。

構文

Status GetPixel(
  [in]  INT   x,
  [in]  INT   y,
  [out] Color *color
);

パラメーター

[in] x

型: INT

ピクセルの x 座標 (列) を指定する整数。

[in] y

型: INT

ピクセルの y 座標 (行) を指定する整数。

[out] color

種類: *

指定したピクセルの色を受け取る Color オブジェクトへのポインター。

戻り値

種類: 状態

メソッドが成功した場合は、Status 列挙の要素である Ok を返します

メソッドが失敗した場合は、 Status 列挙体の他の要素のいずれかを返します。

注釈

ビットマップの形式によっては、 Bitmap::GetPixel が Bitmap::SetPixel によって設定されたものと同じ値 返さない場合があります。 たとえば、ピクセル形式が 32bppPARGB の Bitmap オブジェクトで Bitmap::SetPixel を呼び出すと、ピクセルの RGB コンポーネントが事前に乗算されます。 Bitmap::GetPixel の後続の呼び出しでは、丸めのために別の値が返される場合があります。 また、色深度が 1 ピクセルあたり 16 ビットである Bitmap オブジェクトで Bitmap::SetPixel を呼び出すと、32 ビットから 16 ビットへの変換中に情報が失われ、Bitmap::GetPixel の後続の呼び出しで別の値が返される可能性があります。

次の例では、JPEG ファイルに基づいて Bitmap オブジェクトを作成します。 このコードでは 、Bitmap::GetPixel メソッドを呼び出してビットマップ内のピクセルの色を取得し、取得した色で四角形を塗りつぶします。

VOID Example_GetPixel(HDC hdc)

{

   Graphics graphics(hdc);

   // Create a Bitmap object from a JPEG file.
   Bitmap myBitmap(L"Climber.jpg");

   // Get the value of a pixel from myBitmap.
   Color pixelColor;
   myBitmap.GetPixel(25, 25, &pixelColor);

   // Fill a rectangle with the pixel color.
   SolidBrush brush(pixelColor);
   graphics.FillRectangle(&brush, Rect(0, 0, 100, 100));
}

要件

要件
サポートされている最小のクライアント Windows XP、Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー gdiplusheaders.h (Gdiplus.h を含む)
Library Gdiplus.lib
[DLL] Gdiplus.dll

こちらもご覧ください

Bitmap

Bitmap::LockBits

Bitmap::SetPixel

Color

Image

イメージ、ビットマップ、メタファイル

イメージ、ビットマップ、メタファイルの使用