Поделиться через


Структура 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

См. также раздел