Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Преобразует растровое изображение из одного определенного формата в другой определенный формат и периодически вызывает функцию обратного вызова, если она указана, чтобы сообщить о ходе выполнения и разрешить вызывающей приложению завершить перевод.
Синтаксис
BOOL CMTranslateRGBsExt(
HCMTRANSFORM hcmTransform,
LPVOID lpSrcBits,
BMFORMAT bmInput,
DWORD dwWidth,
DWORD dwHeight,
DWORD dwInputStride,
LPVOID lpDestBits,
BMFORMAT bmOutput,
DWORD dwOutputStride,
LPBMCALLBACKFN lpfnCallback,
LPARAM ulCallbackData
);
Параметры
hcmTransform
Задает используемое преобразование цвета.
lpSrcBits
Указатель на точечный рисунок для перевода.
bmInput
Задает формат входной растровой карты.
dwWidth
Указывает количество пикселей на строку сканирования в входном растровом рисунке.
dwHeight
Указывает количество строк сканирования во входном растровом рисунке.
dwInputStride
Указывает количество байтов от начала одной строки сканирования до начала следующей в входной растровой карте. Если dwInputStride равно нулю, CMM должен предположить, что линии сканирования заполняются так, чтобы выровнять DWORD.
lpDestBits
Указывает на буфер назначения, в котором поместите преобразованное растровое изображение.
bmOutput
Указывает формат выходного растрового изображения.
dwOutputStride
Указывает количество байтов от начала одной строки сканирования до начала следующей в входной растровой карте. Если значение dwOutputStride равно нулю, CMM должен проверять линии сканирования, чтобы они были выровнены по DWORD.
lpfnCallback
Указатель на функцию обратного вызова, предоставляемую приложением, периодически вызываемую CMTranslateRGBsExt , чтобы сообщить о ходе выполнения и разрешить вызову отменить перевод. (См. ICMProgressProcallback.)
ulCallbackData
Данные, передаваемые обратно в функцию обратного вызова, например, чтобы определить перевод, который сообщает о ходе выполнения.
Возвращаемое значение
Если эта функция выполнена успешно, возвращаемое значение равно TRUE.
Если эта функция завершается ошибкой, возвращаемое значение равно FALSE , а CMM должен вызвать SetLastError , чтобы задать для последней ошибки допустимое значение ошибки, определенное в Winerror.h.
Замечания
Для экспорта этой функции требуется каждый CMM.
При записи в целевой буфер CMM должен убедиться, что строки сканирования помещаются в соответствие с DWORD.
Если входные и выходные форматы несовместимы с преобразованием цвета, эта функция завершается ошибкой.
Если форматы входных и выходных растровых изображений имеют 3 канала, 4 байта на пиксель, как в случае BM_xRGBQUADS, четвертые байты должны быть сохранены и скопированы в выходной буфер.
Если функция обратного вызова возвращает ноль, обработка должна быть отменена, а CMTranslateRGBsExt должна возвращать ноль, чтобы указать ошибку; Выходной буфер может быть частично заполнен.
Обратите внимание, что эта функция должна поддерживать перевод на месте. То есть всякий раз, когда объем памяти выходных данных меньше или равен объему памяти входных данных, эта функция должна быть в состоянии перевести цвета растрового изображения, даже если исходные и целевые буферы совпадают.
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows 2000 Профессиональный [только классические приложения] |
| минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
| Header | icm.h |
| Library | Icm32.Lib |