Share via


(icm.h) COLORMATCHSETUPW 結構

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 如果在專案上設定,這個旗標會指出要啟用 Proofing 控制項,並核取 [校訂] 核取方塊。 如果結束時設定,表示使用者想要針對與所選印表機不同的目標裝置執行色彩管理。
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 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 icm.h

另請參閱