Функция DrvQueryColorProfile (winddiui.h)
Функция DrvQueryColorProfile позволяет библиотеке DLL интерфейса принтера указать профиль ICC, используемый для управления цветом.
Синтаксис
BOOL DrvQueryColorProfile(
HANDLE hPrinter,
[in] PDEVMODEW pdevmode,
ULONG ulQueryMode,
[out] VOID *pvProfileData,
[out] ULONG *pcbProfileData,
[out] FLONG *pflProfileData
);
Параметры
hPrinter
Дескриптор принтера, предоставленный вызывающим абонентом.
[in] pdevmode
Предоставленный вызывающим указателем на структуру DEVMODEW .
ulQueryMode
Один из следующих битовых флагов, предоставляемых вызывающим объектом, указывающий тип профиля, который необходимо указать.
Флаг | Определение |
---|---|
QCP_DEVICEPROFILE | Вызывающий объект запрашивает профиль устройства. |
QCP_SOURCEPROFILE | Вызывающий объект запрашивает исходный профиль. |
[out] pvProfileData
Предоставленный вызывающим объектом указатель на буфер для получения сведений профиля.
[out] pcbProfileData
Предоставленный вызывающим объектом указатель на значение, представляющее размер буфера в байтах, на который указывает pvProfileData.
[out] pflProfileData
Один из следующих битовых флагов, предоставляемых функцией, указывающий тип сведений, возвращаемых функцией.
Флаг | Определение |
---|---|
QCP_PROFILEDISK | Функция возвращает имя файла профиля ICC в буфере, на который указывает pvProfileData. |
QCP_PROFILEMEMORY | Функция возвращает данные профиля в буфере, на который указывает pvProfileData. |
Возвращаемое значение
Если операция выполнена успешно, функция возвращает значение TRUE; В противном случае возвращается значение FALSE.
Комментарии
Библиотека DLL интерфейса принтера может дополнительно предоставить функцию DrvQueryColorProfile. Если функция указана, GDI вызывает ее, если для задания печати включенА функция ICM. Функция предназначена для определения и указания профиля ICC, который подходит для использования с заданием печати.
Если библиотека DLL интерфейса принтера драйвера не предоставляет функцию DrvQueryColorProfile или если функция возвращает значение FALSE, GDI пытается найти профиль. Дополнительные сведения см. в разделе Поиск профилей ICC.
Если размер выходного буфера, указанный параметром pcbProfileData , слишком мал, драйвер должен перезаписать значение размера, предоставленное pcbProfileData , требуемым размером буфера, вызвать SetLastError(ERROR_INSUFFICIENT_BUFFER) и вернуть значение FALSE.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | winddiui.h (включая Winddiui.h) |