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


CImage::CreateEx

Создает растровое изображение и CImage вложение его на ранее созданный объект CImage.

BOOL CreateEx(
   int nWidth,
   int nHeight,
   int nBPP,
   DWORD eCompression,
   const DWORD* pdwBitmasks = NULL,
   DWORD dwFlags = 0 
) throw( );

Параметры

  • nWidth
    Ширина растрового изображения в пикселях. CImage

  • nHeight
    Высота растрового изображения CImage в пикселях.Если nHeight положительно, то растровое изображение вверх ногами DIB и его начало координат нижнем левом углу.Если nHeight отрицательное, то растрового изображения DIB сверху вниз, и его левый верхний угол начала координат.

  • nBPP
    Число бит на точку в растровом изображении.Как правило, 4, 8, 16, 24 или 32.Может быть 1 для растровых изображений или масок монохромного.

  • eCompression
    Указывает тип сжатия для сжатого вверх ногами растрового изображения Dib (сверху вниз нельзя сжать).Может иметь одно из следующих значений:

    • BI_RGB Формат распакованные.Указание этого значения равнозначно вызову CImage::Create вызывающий CImage::CreateEx.

    • BI_BITFIELDS Формат распакованные и таблица цвета состоит из 3 масок цвета DWORD, которые определяют красного, зеленого и синего компонентов соответственно каждой точки.Это допустимо при использовании с 16 32 bpp растровых изображений - and.

  • pdwBitfields
    Общий eCompression только если установлено в BI_BITFIELDS, в противном случае это значение должно быть NULL.Указатель на массив 3 битовых масок DWORD, указав, которые используются для каждого пикселя разрядов (красного, зеленого и синего компонентов цвета, соответственно.Дополнительные сведения об ограничениях, разряды см. в разделе BITMAPINFOHEADER в Windows SDK.

  • dwFlags
    Определяет, является ли объект растрового изображения имеет альфа-канал.Сочетание может иметь ноль или более следующих значений:

    • createAlphaChannel Можно использовать только, если nBPP 32 и eCompressionBI_RGB.Если этот параметр задан, созданный образ имеет значение альфы-версии (прозрачности) для каждого пикселя, хранящиеся в 4 байте ом каждой точки (неиспользуемых в соответствии альфы-версии, отличного от 32 разрядном).Этот альфа-канал автоматически используется при вызове CImage::AlphaBlend.

      ПримечаниеПримечание

      При вызовах CImage::Draw, образы с альфа-каналом автоматически альфа-версия смешанная в назначение.

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

Если TRUE успешно.в противном случае FALSE.

Пример

В следующем примере создается растрового изображения в пикселях 100x100, с помощью 16 байт для кодирования каждого пиксель.В заданном 16 разрядном пикселе, биты 0-3 кодируют красный компонент, биты 4-7 кодируют зеленой, и биты 8-11 кодируют синий.Оставшиеся 4 бита неиспользуемый.

DWORD adwBitmasks[3] = { 0x0000000f, 0x000000f0, 0x00000f00 };
m_myImage.CreateEx(100, 100, 16, BI_BITFIELDS, adwBitmasks, 0);

Требования

Header: atlimage.h

См. также

Ссылки

Класс CImage

CImage::CImage

CImage::Create

CImage::AlphaBlend