Функция CMTranslateRGBs (icm.h)
[CMTranslateRGB больше не доступны для использования в Windows Vista.]
Преобразует растровое изображение из одного цветового пространства в другое с помощью преобразования цвета.
Синтаксис
BOOL CMTranslateRGBs(
HCMTRANSFORM hcmTransform,
LPVOID lpSrcBits,
BMFORMAT bmInput,
DWORD dwWidth,
DWORD dwHeight,
DWORD dwStride,
LPVOID lpDestBits,
BMFORMAT bmOutput,
DWORD dwTranslateDirection
);
Параметры
hcmTransform
Указывает используемое преобразование цвета.
lpSrcBits
Указывает на точечный рисунок для преобразования.
bmInput
Задает формат входного растрового изображения.
dwWidth
Указывает количество пикселей на одну строку сканирования во входном растровом рисунке.
dwHeight
Указывает количество строк сканирования на входном растровом рисунке.
dwStride
Указывает количество байтов от начала одной строки сканирования до начала следующей на входном растровом рисунке. Если параметр dwStride равен нулю, CMM должен предполагать, что строки сканирования заполнены так, чтобы они были выровнены по DWORD.
lpDestBits
Указывает на буфер назначения, в который помещется преобразованное растровое изображение.
bmOutput
Задает выходной формат растрового изображения.
dwTranslateDirection
Указывает направление преобразования, используемого для преобразования. Этот параметр должен принимать одно из следующих значений.
Значение | Значение |
---|---|
CMS_FORWARD | Использование прямого преобразования |
CMS_BACKWARD | Использование обратного преобразования |
Возвращаемое значение
Начиная с Windows Vista, CMM по умолчанию (Icm32.dll) возвращает значение FALSE , а GetLastError — ERROR_NOT_SUPPORTED.
Windows Server 2003, Windows XP и Windows 2000:
Если эта функция выполняется успешно, возвращается значение TRUE.
Если эта функция завершается сбоем, возвращается значение FALSE. Если функция не выполнена успешно, CMM должна вызвать SetLastError , чтобы задать для последней ошибки допустимое значение ошибки, определенное в Winerror.h.
Комментарии
Начиная с Windows Vista, разработчики CMM больше не требуются для реализации этого метода.
Windows Server 2003, Windows XP и Windows 2000:
Для экспорта этой функции требуется каждый CMM.
При записи в целевой буфер CMM должен убедиться, что строки сканирования заполнены для выравнивания по DWORD.
Если форматы входных и выходных данных несовместимы с преобразованием цвета, эта функция завершается ошибкой.
Если и входной, и выходной растровые форматы имеют 3-канальный, 4 байта на пиксель, как в случае BM_xRGBQUADS, то 4-й байт следует сохранить и скопировать в выходной буфер.
Обратите внимание, что эта функция должна поддерживать перевод на месте. Это означает, что каждый раз, когда объем памяти выходных данных меньше или равен занимаемой памяти входных данных, эта функция должна иметь возможность преобразовывать цвета растрового рисунка, даже если исходный и целевой буферы совпадают.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Верхняя часть | icm.h |