Растровые изображения, пиктограммы и метафайлы, страница 6

См. \local-sources\chapl3\13-03.txtРисунок 13.3. Пример применения функции Copylcon.

Copylmage                               • Windows 98   • Windows 2000

Описание

Функция Copylmage создает новое изображение (пиктограмму, курсор или растровое изображение) с атрибутами другого изображения. В случае необходимости эта функция растягивает двоичный образ в соответствии с заданным размером нового изображения.

Синтаксис

HANDLE Copylmage( HANDLE hlmage, UINT uType, int cxDesired, int cyDesired, UINT uFlags )

Параметры hlmage

HANDLE. Дескриптор изображения, которое должно быть скопировано.

иТуре

UINT. Тип изображения, которое должно быть скопировано. Этот параметр может иметь одно из значений, перечисленных в табл. 13.3.

Таблица 13.3. Значения параметра иТуре функции Copylmage

Значение

Описание

IMAGE_BITMAP

Копируется растровое изображение

IMAGE_CURSOR

Копируется курсор

IMAGE_ENHMETAFILE

Копируется расширенный метафайл

IMAGEJCON

Копируется пиктограмма

cxDesired

int. Требуемая ширина нового изображения в пикселях.

cyDesired

int. Требуемая высота нового изображения в пикселях.

uFlags

UINT. Определяется способ копирования изображения. Этот параметр может представлять собой комбинацию значений, перечисленных в табл. 13.4, объединенных с помощью двоичного оператора OR (|).

Таблица 13.4. Значения папаметпа uFlaas ФУНКЦИИ Coovlmaae

Значение

Описание

LR_COPYDELETEORG

Удалить первоначальное изображение после создания копии

LR_COPYFROMRESOURCE

Попытаться снова загрузить ресурс пиктограммы или курсора из первоначального файла ресурса. Это может применяться для создания копии другого размера, если файл ресурса содержит ресурсы разных размеров.

LR_COPYRETURNORG

Создать точную копию изображения, игнорируя параметры cxDes/red и cyDesired

LR_CREATEDIBSECTION

Создать новое растровое изображение в качестве раздела DIB.

LR_MONOCHROME

Создать новое монохромное изображение

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

HANDLE. Дескриптор вновь созданного изображения. В случае возникновения ошибки возвращаемое значение — NULL.

Включаемый файл

winuser.h

См. также

Loadlmage, Copy Icon, CopyCursor

Пример

Следующий пример полностью аналогичен примеру для функции Copy-Icon, за исключением того, что функция Copylmage применяется для копирования пиктограммы и создания монохромной пиктограммы.

См.    \local-sources\chapl3\13-04.txt

CreateBitmap                             • Windows 98   • Windows 2000

Описание

Функция CreateBitmap позволяет создать на основе массива двоичных значений цвета растровое изображение с заданной шириной, высотой и форматом цвета (с заданным числом цветовых плоскостей и битов на пиксель).

Синтаксис

HBITMAP CreateBitmap( int nWidth, int nHeight, UINT uPlanes, UINT uBitsPerPel, CONST VOID* IpvBits )

Параметры

nWidth

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

nHeight

int. Высота растрового изображения в пикселях.

uPlanes

UINT. Число цветовых плоскостей в растровом изображении.

uBitsPerPel

UINT. Число битов, необходимых для обозначения цвета одного пикселя.

IpvBits

CONST VOID*. Указатель на массив байтов, содержащий пиксельные данные. Каждая строка развертки в прямоугольной области должна быть выровнена по границе слова (строки развертки, не выровненные по границе слова, должны быть дополнены нулями). Если этот параметр установлен равным NULL, новое растровое изображение не определено.

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

HBITMAP. Дескриптор нового растрового изображения. В случае возникновения ошибки возвращаемое значение — NULL.

Включаемый файл

wingdi.h