Структура COLORMATCHSETUPA (icm.h)
Структура COLORMATCHSETUP содержит сведения, которые функция SetupColorMatchingW использует для инициализации диалогового окна ColorManagement . Когда пользователь закроет диалоговое окно, SetupColorMatching возвращает сведения о выборе пользователя в этой структуре.
Синтаксис
typedef struct _tagCOLORMATCHSETUPA {
DWORD dwSize;
DWORD dwVersion;
DWORD dwFlags;
HWND hwndOwner;
PCSTR pSourceName;
PCSTR pDisplayName;
PCSTR pPrinterName;
DWORD dwRenderIntent;
DWORD dwProofingIntent;
PSTR pMonitorProfile;
DWORD ccMonitorProfile;
PSTR pPrinterProfile;
DWORD ccPrinterProfile;
PSTR pTargetProfile;
DWORD ccTargetProfile;
DLGPROC lpfnHook;
LPARAM lParam;
PCMSCALLBACKA lpfnApplyCallback;
LPARAM lParamApplyCallback;
} COLORMATCHSETUPA, *PCOLORMATCHSETUPA, *LPCOLORMATCHSETUPA;
Члены
dwSize
Размер структуры. Должно быть задано значение sizeof ( COLORMATCHSETUP ).
dwVersion
Версия структуры COLORMATCHSETUP . Для этого параметра должно быть задано значение COLOR_MATCH_VERSION.
dwFlags
Набор битовых флагов, используемых для инициализации диалогового окна. Если для записи задано значение 0, все элементы управления предполагают свои состояния по умолчанию.
Когда диалоговое окно возвращается, эти флаги задаются для указания введенных пользователем данных.
Этот элемент можно задать с помощью сочетания следующих флагов.
Flag | Значение |
---|---|
CMS_DISABLEICM | Если этот флаг задан в записи, этот флаг указывает, что флажок "Включить управление цветом" проверка снят, что отключает все остальные элементы управления. Если задано значение при выходе, это означает, что пользователь не хочет, чтобы управление цветом выполнялось. |
CMS_ENABLEPROOFING | Если задано для записи, этот флаг указывает, что элементы управления правописания должны быть включены, и установлен флажок Правописания проверка. Если этот параметр установлен при выходе, это означает, что пользователь хочет управлять цветом для целевого устройства, отличного от выбранного принтера. |
CMS_SETRENDERINTENT | Если задано для записи, этот флаг указывает, что член dwRenderIntent содержит значение, используемое для инициализации элемента управления Намерение отрисовки. В противном случае элемент управления по умолчанию использует отрисовку рисунков. Этот флаг устанавливается при выходе, если включен WCS. |
CMS_SETPROOFINTENT | Игнорируется, если CMS_ENABLEPROOFING также не задано. Если задано в записи и CMS_ENABLEPROOFING также задано, этот флаг указывает, что элемент dwProofingIntent будет использоваться для инициализации элемента управления Целевое намерение отрисовки. В противном случае элемент управления по умолчанию использует отрисовку рисунков. Этот флаг устанавливается при выходе, если проверка правописания включена. |
CMS_SETMONITORPROFILE | Если этот флаг задан в записи, этот флаг указывает, что профиль управления цветом с именем в элементе pMonitorProfile должен быть первоначальным выбором в элементе управления профилем монитора. Если указанный профиль не связан с монитором, этот флаг игнорируется и используется профиль по умолчанию для монитора. |
CMS_SETPRINTERPROFILE | Если этот флаг задан в записи, этот флаг указывает, что профиль управления цветом с именем в элементе pPrinterProfile должен быть начальным выбором в элементе управления профилем принтера. Если указанный профиль не связан с принтером, этот флаг игнорируется и используется профиль по умолчанию для принтера. |
CMS_SETTARGETPROFILE | Если задано в записи, этот флаг указывает, что цветной профиль в элементе pTargetProfile должен быть начальным выбором в элементе управления целевого профиля. Если указанный профиль не установлен, этот флаг игнорируется и используется профиль по умолчанию для принтера. Если у принтера нет профиля по умолчанию, отобразится первый профиль в алфавитном порядке. |
CMS_USEHOOK | Этот флаг указывает, что член lpfnHook содержит адрес процедуры перехватчика, а член lParam содержит значение, которое будет передано процедуре перехватчика при отправке сообщения WM_INITDIALOG. |
CMS_MONITOROVERFLOW | Этот флаг устанавливается при выходе, если необходимо включить управление цветом, а размер буфера, заданный в ccMonitorProfile , недостаточен для выбранного имени профиля. GetLastError возвращает ERROR_INSUFFICIENT_BUFFER в этом случае. |
CMS_PRINTERROVERFLOW | Этот флаг устанавливается при выходе, если необходимо включить управление цветом, а размер буфера, заданный в ccPrinterProfile , недостаточен для выбранного имени профиля. GetLastError возвращает ERROR_INSUFFICIENT_BUFFER в этом случае. |
CMS_TARGETOVERFLOW | Этот флаг устанавливается при выходе, если необходимо включить проверку правописания, а размер буфера, заданный в ccTargetProfile , недостаточен для выбранного имени профиля. GetLastError возвращает ERROR_INSUFFICIENT_BUFFER в этом случае. |
CMS_USEAPPLYCALLBACK | Если задано в записи, этот флаг указывает, что функция SetupColorMatching должна вызывать функцию PCMSCALLBACKW. Адрес функции обратного вызова содержится в lpfnApplyCallback. |
CMS_USEDESCRIPTION | Если этот флаг задан в записи, функция SetupColorMatching получает описание профиля, содержащееся в тегах описания профиля (см. спецификацию формата профиля ICC версии 3.4). Они будут вставлены в поля редактирования "Профиль монитора", "Профиль принтера", " Эмулированный профиль устройства " в общем диалоговом окне "Управление цветом ". |
hwndOwner
Дескриптор окна владельцу диалогового окна или значение NULL , если диалоговое окно не имеет владельца.
pSourceName
Указатель на строку, указанную приложением, которая описывает исходный профиль элемента, для которого должно выполняться управление цветом. Если значение равно NULL, в элементе управления "Источник изображений" отображается имя цветового профиля Windows по умолчанию.
pDisplayName
Указывает на строковое имя монитора, используемого для управления цветом. Если это не имя допустимого монитора, используется первый перечислимый монитор.
pPrinterName
Указывает на строку, именующую принтер, на котором должно быть отрисовывается изображение. Если это недопустимое имя принтера, используется принтер по умолчанию и называется в диалоговом окне.
dwRenderIntent
Требуемый тип управления цветом. Допустимые значения:
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
Дополнительные сведения см. в разделе Намерения отрисовки.
dwProofingIntent
Тип управления цветом, требуемый для изображения с проверкой. Допустимые значения:
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
Дополнительные сведения см. в разделе Намерения отрисовки.
pMonitorProfile
Указатель на буфер, в который нужно поместить имя выбранного пользователем профиля монитора. Если используется флаг CMS_SETMONITORPROFILE, этот флаг также можно использовать для выбора профиля, отличного от стандартного монитора при первом отображении диалогового окна.
ccMonitorProfile
Размер буфера, на который указывает элемент pMonitorProfile , в символах. Если буфер недостаточно велик для хранения выбранного имени, имя усекается до этого размера и возвращается ERROR_INSUFFICIENT_BUFFER. Буфер размера MAX_PATH всегда работает.
pPrinterProfile
Указывает на буфер, в который нужно поместить имя выбранного пользователем профиля принтера. Если используется флаг CMS_SETPRINTERPROFILE, этот флаг также можно использовать для выбора профиля, отличного от используемого по умолчанию принтера при первом отображении диалогового окна.
ccPrinterProfile
Размер буфера, на который указывает элемент pPrinterProfile , в символах. Если буфер недостаточно велик для хранения выбранного имени, имя усекается до этого размера и возвращается ERROR_INSUFFICIENT_BUFFER. Буфер размера MAX_PATH всегда работает.
pTargetProfile
Указывает на буфер, в который нужно поместить имя выбранного пользователем целевого профиля для проверки правописания. Если используется флаг CMS_SETTARGETPROFILE, этот флаг также можно использовать для выбора профиля, отличного от используемого по умолчанию принтера при первом отображении диалогового окна.
ccTargetProfile
Размер буфера, на который указывает элемент pTargetProfile , в символах. Если буфер недостаточно велик для хранения выбранного имени, имя усекается до этого размера и возвращается ERROR_INSUFFICIENT_BUFFER. Буфер размера MAX_PATH всегда работает.
lpfnHook
Если флаг CMS_USEHOOK установлен, этот элемент является адресом процедуры диалога (см. раздел DialogProc ), которая может фильтровать или обрабатывать сообщения для диалога. Процедура перехватчика не получает сообщений, выданных до WM_INITDIALOG. Он вызывается в сообщении WM_INITDIALOG после обработки сообщения предоставленной системой диалоговой процедуры. Во всех остальных сообщениях процедура перехватчика получает сообщение до предоставленной системой процедуры. Если процедура перехватчика возвращает к этим сообщениям значение TRUE , то предоставленная системой процедура не вызывается.
Процедура перехватчика может вызывать функцию EndDialog .
lParam
Если установлен флаг CMS_USEHOOK, этот элемент передается в предоставленную приложением процедуру перехватчика в качестве параметра lParam при обработке сообщения WM_INITDIALOG.
lpfnApplyCallback
Содержит указатель на функцию обратного вызова, которая вызывается при выборе кнопки Применить диалогового окна Управление цветом. Если функция обратного вызова не указана, для этого элемента должно быть задано значение NULL. См . раздел PCMSCALLBACKW.
lParamApplyCallback
Содержит значение, которое будет передано функции ApplyCallbackFunction через ее параметр lParam . Значение и содержимое значения определяется приложением.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Верхняя часть | icm.h |