WcsOpenColorProfileA 関数 (icm.h)
指定したカラー プロファイルへのハンドルを作成します。
構文
HPROFILE WcsOpenColorProfileA(
PPROFILE pCDMPProfile,
PPROFILE pCAMPProfile,
PPROFILE pGMMPProfile,
DWORD dwDesireAccess,
DWORD dwShareMode,
DWORD dwCreationMode,
DWORD dwFlags
);
パラメーター
pCDMPProfile
プロファイルを指定する WCS DMP または ICC カラー プロファイル構造体へのポインター。 ハンドルを作成した後、 pCDMPProfile ポインターを解放できます。 プロファイルが ICC で、その dwType メンバーがDONT_USE_EMBEDDED_WCS_PROFILESに設定されている場合、 WcsOpenColorProfile は ICC プロファイル内の埋め込み WCS プロファイルを無視します。
pCAMPProfile
WCS カラーアピアランス モデル プロファイル (CAMP) を指定するプロファイル構造へのポインター。 ハンドルを作成した後、 pCAMPProfile ポインターを解放できます。 NULL の場合、既定の CAMP が使用され、既定の CAMP のクエリ中に現在のユーザー設定WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USERが使用されます。
pGMMPProfile
WCS 色域マップ モデル プロファイル (GMMP) を指定するプロファイル構造へのポインター。 ハンドルを作成した後、 pGMMPProfile ポインターを解放できます。 NULL の場合、既定のレンダリング 意図の既定の GMMP が使用され、既定の GMMP のクエリ中に現在のユーザー設定WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USERが使用されます。 レンダリング インテントの説明については、「意図の レンダリング」を参照してください。
dwDesireAccess
指定したカラー プロファイルにアクセスする方法を指定するフラグ値。 このパラメーターは、次のいずれかの値を受け取る必要があります。
値 | 説明 |
---|---|
PROFILE_READ | カラー プロファイルが読み取り専用アクセス用に開かれることを指定します。 |
PROFILE_READWRITE | 読み取りアクセスと書き込みアクセスの両方に対してカラー プロファイルを開く方法を指定します。 プロファイルが WCS プロファイルの場合、このフラグの値は無視されます。 |
dwShareMode
ファイルに含まれるカラー プロファイルを開くときに実行するアクションを指定するフラグ値。 このパラメーターは、 winnt.h で定義されている次のいずれかの値を受け取る必要があります。
値 | 説明 |
---|---|
FILE_SHARE_READ | プロファイルに対して他のオープン操作 (読み取りアクセス用) を実行できることを指定します。 |
FILE_SHARE_WRITE | プロファイルに対して他のオープン操作 (書き込みアクセス用) を実行できることを指定します。 WCS プロファイルを開くと、このフラグ値は無視されます。 |
dwCreationMode
カラー プロファイルがファイルに含まれている場合に、カラー プロファイルを開くときに実行するアクションを指定するフラグ値。 このパラメーターは、 winbase.h で定義されている次のいずれかの値を受け取る必要があります。
値 | 説明 |
---|---|
CREATE_NEW | 新しいプロファイルを作成することを指定します。 プロファイルが既に存在する場合、この関数は失敗します。 |
CREATE_ALWAYS | 新しいプロファイルを作成することを指定します。 プロファイルが既に存在する場合は、上書きされます。 |
OPEN_EXISTING | プロファイルを開くように指定します。 プロファイルが存在しない場合、この関数は失敗します。 |
OPEN_ALWAYS | 国際色コンソーシアム (ICC) ファイルが存在する場合にプロファイルを開くように指定します。 ICC プロファイルが存在しない場合、WCS は新しい ICC プロファイルを作成します。 このフラグが設定され、WCS プロファイルが存在しない場合、この関数は WCS プロファイルに対して失敗します。 |
TRUNCATE_EXISTING | プロファイルを開き、0 バイトに切り捨てることを指定します。 プロファイルが存在しない場合、関数は失敗します。 |
dwFlags
埋め込み WCS プロファイルを使用するかどうかを指定するフラグ値。 pCDMProfile が、埋め込み WCS プロファイルを含む ICC プロファイルを指定しない限り、このパラメーターは無効です。
このパラメーターは、次のいずれかの値を受け取ります。
値 | 説明 |
---|---|
0 | 埋め込み WCS プロファイルを使用し、pCDMPProfile によって指定された ICC プロファイルを無視することを指定します。 |
DONT_USE_EMBEDDED_WCS_PROFILES | pCDMPProfile で指定された ICC プロファイルを使用し、埋め込み WCS プロファイルを無視することを指定します。 |
戻り値
この関数が成功した場合、戻り値は開かれたカラー プロファイルのハンドルです。
この関数が失敗した場合、戻り値は NULL です。
解説
この API は、DMP、CAMP、GMMP のセットを受け取り、WCS プロファイル ハンドルを返します。 GMMP の NULL 値は有効です。 CAMP の NULL 値は、既定の CAMP 値に置き換えられます。
この API は、ICC プロファイルも受け入れます。 ICC プロファイルを使用しても、WCS CITE エンジンによる処理は保証されません。 WCS エンジンは、少なくとも 1 つの WCS プロファイルが渡された場合にのみ使用されます。 純粋な ICC ワークフローは、従来の動作と一致します。
この関数が返すハンドルは、他のカラー プロファイル管理機能で使用できます。
dwCreationMode フラグCREATE_NEW、CREATE_ALWAYS、TRUNCATE_EXISTINGは、常に空白の ICC HPROFILEs を返します。 他の dwCreationMode フラグが存在する場合、プロファイルが ICC か WCS XML かを判別します。
ICC コード・パス内では、上記の表で指定されているように、要求された共有、アクセス、および作成フラグを使用して ICC HPROFILE が戻されます。
WCS パス内では、プロファイルが存在しない場合、 dwCreationMode フラグ OPEN_ALWAYSは失敗します。WCS プロファイルは WCS アーキテクチャ内で作成または編集できないためです (MSXML6 を使用して外部で編集する必要があります)。 同じ理由で、 dwShareMode フラグがFILE_SHARE_WRITEされ、 dwDesiredAccess フラグ PROFILE_READWRITEは WCS パス内では無視されます。
カラー プロファイルのハンドルが作成されたら、そのハンドルの作成に使用された情報を削除できます。
WcsOpenColorProfile によって返されるオブジェクト ハンドルを閉じるには、CloseColorProfile 関数を使用します。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | icm.h |
Library | Mscms.lib |
[DLL] | Mscms.dll |