Как изменить свойства растровых изображений в C ++ - PullRequest
1 голос
/ 24 февраля 2010
    Bitmap bmp(100,100, PixelFormat32bppARGB);
    bmp.SetPixel(2,2,Gdiplus::Color::AliceBlue);
    int x = bmp.GetHeight();
    int y = bmp.GetWidth();
    Gdiplus::Color* ccc = new Gdiplus::Color;
    Gdiplus::Color* ccc2 = new Gdiplus::Color;
    bmp.GetPixel(2,2,ccc);
    bmp.GetPixel(0,0,ccc2);

В предыдущем примере кода свойства растрового изображения всегда выглядят так, как если бы он был нулевым. высота и ширина всегда равны нулю, а цвет любого пикселя всегда одинаков. Как правильно изменить свойства растрового изображения?

1 Ответ

2 голосов
/ 24 февраля 2010

Конструктор, который вы вызываете, не заполняет пиксельные данные вашего растрового изображения. Вам нужно вызвать версию bmp.FromX() после создания, чтобы заполнить ваше растровое изображение.

Кроме того, вы можете вызвать другой конструктор, который даст вам заполненное растровое изображение.

Кроме того, вы можете заключить вызов SetPixel() в вызовы LockBits() и UnlockBits().

Читайте о спецификации здесь для более подробной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...