Поделиться через


Метод Bitmap::SetPixel (gdiplusheaders.h)

Метод Bitmap::SetPixel задает цвет указанного пикселя в этом растровом рисунке.

Синтаксис

Status SetPixel(
  [in]      INT           x,
  [in]      INT           y,
  [in, ref] const Color & color
);

Параметры

[in] x

Тип: INT

int , указывающий координату x (столбец) пикселя.

[in] y

Тип: INT

int , указывающий координату Y (строку) пикселя.

[in, ref] color

Тип: const Color

Ссылка на объект Color , указывающий задающий цвет.

Возвращаемое значение

Тип: Состояние

В случае успешного выполнения метода возвращается ОК, который является элементом перечисления Status .

Если метод завершается ошибкой, он возвращает один из других элементов перечисления Status .

Комментарии

В зависимости от формата растрового изображения bitmap::GetPixel может не возвращать то же значение, которое было задано Bitmap::SetPixel. Например, если вы вызываете Bitmap::SetPixel для объекта Bitmap , формат пикселей которого составляет 32bppPARGB, компоненты RGB предварительно добавляются. Последующий вызов Bitmap::GetPixel может возвращать другое значение из-за округления. Кроме того, если вызвать Bitmap::SetPixel для растрового изображения , глубина цвета которого составляет 16 бит на пиксель, при преобразовании с 32 до 16 бит может быть потеряна информация, а последующий вызов Bitmap::GetPixel может вернуть другое значение.

Примеры

В следующем примере создается объект Bitmap на основе JPEG-файла. Код рисует точечный рисунок после того, как он не отмечен. Затем код вызывает метод Bitmap::SetPixel для создания клетчатого узора черных пикселей в растровом рисунке и рисует измененное растровое изображение.

VOID Example_SetPixel(HDC hdc)

{
   Graphics graphics(hdc);

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

   // Draw the bitmap.
   graphics.DrawImage(&myBitmap, 0, 0);

   // Create a checkered pattern with black pixels.
   for (UINT row = 0; row < myBitmap.GetWidth(); row += 2)
   {
      for (UINT col = 0; col < myBitmap.GetHeight(); col += 2)
      {
         myBitmap.SetPixel(row, col, Color(255, 0, 0, 0));
      }
   }

   // Draw the altered bitmap.
   graphics.DrawImage(&myBitmap, 200, 0);
}

Требования

Требование Значение
Минимальная версия клиента Windows XP, Windows 2000 Профессиональная [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header gdiplusheaders.h (включая Gdiplus.h)
Библиотека Gdiplus.lib
DLL Gdiplus.dll

См. также раздел

Bitmap

Bitmap::GetPixel

Цвет

Изображение

Работа с растровыми и векторными изображениями с использованием классов Image, Bitmap и Metafile

Использование изображений, точечных изображений и метафайлов