COLORMATCHSETUPW 结构 (icm.h)

COLORMATCHSETUP 结构包含 SetupColorMatchingW 函数用于初始化 ColorManagement 对话框的信息。 用户关闭对话框后, SetupColorMatching 将返回有关此结构中用户选择的信息。

语法

typedef struct _tagCOLORMATCHSETUPW {
  DWORD         dwSize;
  DWORD         dwVersion;
  DWORD         dwFlags;
  HWND          hwndOwner;
  PCWSTR        pSourceName;
  PCWSTR        pDisplayName;
  PCWSTR        pPrinterName;
  DWORD         dwRenderIntent;
  DWORD         dwProofingIntent;
  PWSTR         pMonitorProfile;
  DWORD         ccMonitorProfile;
  PWSTR         pPrinterProfile;
  DWORD         ccPrinterProfile;
  PWSTR         pTargetProfile;
  DWORD         ccTargetProfile;
  DLGPROC       lpfnHook;
  LPARAM        lParam;
  PCMSCALLBACKW lpfnApplyCallback;
  LPARAM        lParamApplyCallback;
} COLORMATCHSETUPW, *PCOLORMATCHSETUPW, *LPCOLORMATCHSETUPW;

成员

dwSize

结构的大小。 应设置为 sizeof ( COLORMATCHSETUP ) 。

dwVersion

COLORMATCHSETUP 结构的版本。 应将其设置为 COLOR_MATCH_VERSION。

dwFlags

用于初始化对话框的一组位标志。 如果输入时设置为 0,则所有控件都采用其默认状态。

当对话框返回时,这些标志将设置为指示用户的输入。

可以使用以下标志的组合来设置此成员。

标志 含义
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 配置文件格式规范 v3.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标志,则处理WM_INITDIALOG消息时,此成员将作为 lParam 参数传递到应用程序提供的挂钩过程。

lpfnApplyCallback

包含指向回调函数的指针,该函数在选择“颜色管理”对话框的“ 应用 ”按钮时调用。 如果未提供回调函数,则应将此成员设置为 NULL。 请参阅 PCMSCALLBACKW

lParamApplyCallback

包含一个值,该值将通过函数的 lParam 参数传递给函数 ApplyCallbackFunction。 值的含义和内容由应用程序指定。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 icm.h

另请参阅