DrvIcmCreateColorTransform 関数 (winddi.h)
DrvIcmCreateColorTransform 関数は、ICM カラー変換を作成します。
構文
HANDLE DrvIcmCreateColorTransform(
[in] DHPDEV dhpdev,
[in] LPLOGCOLORSPACEW pLogColorSpace,
[in, optional] PVOID pvSourceProfile,
[in] ULONG cjSourceProfile,
[in] PVOID pvDestProfile,
[in] ULONG cjDestProfile,
[in, optional] PVOID pvTargetProfile,
[in] ULONG cjTargetProfile,
[in] DWORD dwReserved
);
パラメーター
[in] dhpdev
物理デバイスの PDEV を処理します。
[in] pLogColorSpace
論理色空間構造体へのポインター。 LOGCOLORSPACEW 構造体は、Microsoft Windows SDKドキュメントで定義されています。 pvSourceProfile が NULL の場合、ドライバーはこの構造体からソースの色空間情報を取得する必要があります。
[in, optional] pvSourceProfile
ソース プロファイルのメモリ マップへのポインター。 このパラメーターは、NULL でもかまいません。
[in] cjSourceProfile
ソース プロファイルメモリマップのサイズをバイト単位で指定します。 pvSourceProfile が NULL の場合、このパラメーターは 0 に設定する必要があります。
[in] pvDestProfile
宛先プロファイルのメモリ マップへのポインター。
[in] cjDestProfile
宛先プロファイルのメモリ マップのサイズをバイト単位で指定します。
[in, optional] pvTargetProfile
ターゲット プロファイルのメモリ マップへのポインター。 このパラメーターは、NULL でもかまいません。
[in] cjTargetProfile
ターゲット プロファイル メモリ マップのサイズをバイト単位で指定します。 pvTargetProfile が NULL の場合、このパラメーターは 0 に設定する必要があります。
[in] dwReserved
0 に設定する必要がある予約済みパラメーター。
戻り値
DrvIcmCreateColorTransform は、成功した場合に作成された変換へのハンドルを返します。 それ以外の場合は、エラーを報告し、 NULL を返します。
注釈
ドライバーは、次のようにプロファイル データから色変換を作成します。
- ドライバーでは、 pvSourceProfile が指すソース プロファイルが NULL でない場合に使用する必要があります。 それ以外の場合、ドライバーは、ソースの色空間情報に pLogColorSpace がポイントする構造体のデータを使用する必要があります。
- ドライバーは、ターゲット プロファイルを受け取るが、ターゲット プロファイルを受け取っていない場合は、指定したソースの色空間から指定した変換先の色空間に色を変換するために必要なデータを格納する必要があります。
- ドライバーは、宛先プロファイルとターゲット プロファイルの両方を受け取ると、指定したソースの色空間から指定されたターゲットの色空間に色を変換するために必要なデータを格納し、ターゲットの色空間から変換先の色空間に戻す必要があります。 このシナリオでは、ドライバーのデバイスは、イメージを証明できる宛先デバイスです。 その後、ドライバーは、校正イメージの色空間をターゲット デバイスの色空間に変換できる必要があります。
指定されたプロファイルは、ICC プロファイル形式のバージョン 2.10 に準拠しています。 ドライバーが指定された形式を理解していない場合は、呼び出しに失敗する必要があります。
ドライバーは、各プロファイルのメモリ マップ全体に安全にアクセスできます。 pvSourceProfile、pvDestProfile、および pvTargetProfile ポインターは、DrvIcmCreateTransform の呼び出しのスコープ中にのみ有効です。
ICM のサポートを報告するドライバーは、この関数を実装する必要があります。 ドライバーは、DEVINFO 構造体の flGraphicsCaps メンバーにGCAPS_ICM フラグを設定することで、ICM のサポートを示します。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | winddi.h (Winddi.h を含む) |