WcsCreateIccProfile 函式 (icm.h)
將 WCS 設定檔轉換成國際色彩聯盟 () 設定檔。
語法
HPROFILE WcsCreateIccProfile(
HPROFILE hWcsProfile,
DWORD dwOptions
);
參數
hWcsProfile
轉換之 WCS 色彩設定檔的控制碼。 請參閱<備註>。
dwOptions
指定設定檔轉換選項的旗標值。
根據預設,用於轉換的原始 WCS 設定檔會內嵌在 Microsoft 私人標記 WcsProfilesTag (簽章 「MS000」 的輸出 ICC 設定檔中。 這會產生與 ICC 軟體相容的 ICC 設定檔,但會保留原始的 WCS 設定檔資料,以便用來剖析它的程式碼。
此參數的可能值如下所示。 此清單中未定義的任何位都會保留,且應設定為零:
值 | 描述 |
---|---|
WCS_DEFAULT | 指定新的 ICC 設定檔包含私人 WcsProfilesTag 中的原始 WCS 設定檔。 |
WCS_ICCONLY | 指定新的 ICC 設定檔不包含 WcsProfilesTag 或原始的 WCS 設定檔。 |
傳回值
如果此函式成功,傳回值就是新色彩設定檔的控制碼。
如果此函式失敗,則傳回值為 Null。 如需擴充的錯誤資訊,請呼叫 GetLastError。
備註
此函式可以搭配 ASCII 或 Unicode 字串使用。
CloseColorProfile函式應該用來在不再需要時關閉傳回的 HPROFILE 控制碼。
HPROFILE 中的 DMP、CAMP 和 GMMP 會內嵌在所建立的 ICC 設定檔內的私人標記中。
使用此 API 建立的 ICC 設定檔會根據下列模式,從 WCS 設定檔的 ProfileName 元素建構其設定檔描述標記:「由 Microsoft WCS 從 DMP:[DMP ProfileName]、 CAMP:[THE CAMP ProfileName]、 GMMP:[GMMP ProfileName]」
當 WCS 透過 OpenColorProfileW 或 WcsOpenColorProfile ) W (時,它會擷取並使用 包含在 WcsProfilesTag 中的 WCS設定檔 () 。
在 WCS 中建立之 gamut 標籤中的頻外資訊會使用 CIECAM02 中的感知色彩距離,這是 CIECAM02 Jab 空間中的平均平方根。 舊版 ICC 設定檔遊戲標記中的距離是 CIELAB 空間中的平均平方根。 建議您在可用時使用 CIECAM02 空間,以提供更精確的距離計量。
WCS 會擷取並使用原始的 WCS 設定檔,方法是明確與裝置相關聯的 XML 設定檔,或具有WcsProfilesTag的 ICC 設定檔。
WcsProfilesTag是 Microsoft 私人的 ICC 設定檔標記,用於WcsCreateIccProfile所建立的設定檔中,以包含WcsCreateIccProfile 的 WCS設定檔輸入。 此標記符合設定檔標籤的 ICC 設定檔需求。 標記的非 XML 元件必須以「Big-Endian」 位元組順序表示,這是 ICC 設定檔的標準。 此外,標籤資料必須在 4 位元組界限上對齊, (從) 的) 開始測量。 標記的結構是由下方的 WcsProfilesTagType 所定義。 請注意,標籤的 XML 元件 WCS 設定檔包含在 WcsProfileTag 中,會保留其原生位元組順序,這可能是位元組由小到大或大端,因為 XML 剖析器已正確處理。
WcsProfilesTag 簽章為 「MS00」。 這是會出現在 WcsProfilesTag 之 ICC 設定檔標籤資料表中的標記簽章。
WcsProfilesTagType 結構具有下列結構:
位元組位移 | Content |
---|---|
0-3 | MS10 類型簽章。 |
4-7 | 保留,必須設定為 0 (ICC 傳統) 。 |
8-11 | 從標記開頭到 CDMP 資料的位元組位移。 |
12-15 | 以位元組為單位的 CDMP 資料大小。 |
16-19 | 從標記開頭到 CAMP 資料的位元組位移。 |
20-23 | 以位元組為單位的 CAMP 資料大小。 |
24-27 | 從標記開頭到 GMMP 資料的位元組位移。 |
28-31 | 從標記開頭到 GMMP 資料的位元組位移。 |
31-n | 一連串 (元素大小 -32) 個位元組 [其中元素大小是此標記的 ICC 設定檔標籤資料表專案中記錄的標籤大小。] |
這些是 WcsCreateIccProfile 用來建立此 ICC 設定檔的 WCS XML 設定檔。 WCS 設定檔已排序:DMP (需要先) ,如果存在) ,則接著 CAMP (,後面接著 GMMP (,如果有的話) 。
需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
標頭 | icm.h |
程式庫 | Mscms.lib |
Dll | Mscms.dll |