LOGCOLORSPACEA 構造体 (wingdi.h)
LOGCOLORSPACE 構造体には、論理 色空間を定義する情報が含まれています。
構文
typedef struct tagLOGCOLORSPACEA {
DWORD lcsSignature;
DWORD lcsVersion;
DWORD lcsSize;
LCSCSTYPE lcsCSType;
LCSGAMUTMATCH lcsIntent;
CIEXYZTRIPLE lcsEndpoints;
DWORD lcsGammaRed;
DWORD lcsGammaGreen;
DWORD lcsGammaBlue;
CHAR lcsFilename[MAX_PATH];
} LOGCOLORSPACEA, *LPLOGCOLORSPACEA;
メンバーズ
lcsSignature
色空間の署名。 現時点では、このメンバーは常に LCS_SIGNATURE に設定する必要があります。
lcsVersion
バージョン番号。は0x400する必要があります。
lcsSize
この構造体のサイズ (バイト単位)。
lcsCSType
色空間の種類。 メンバーには、次のいずれかの値を指定できます。
価値 | 意味 |
---|---|
LCS_CALIBRATED_RGB | 色の値は、調整された RGB 値です。 値は、デバイスに渡される前に、lcsEndpoints メンバーによって指定されたエンドポイントを使用して変換されます。 |
LCS_sRGB | 色の値は sRGB 値です。 |
LCS_WINDOWS_COLOR_SPACE | 色の値は、Windows の既定の色空間の色の値です。 |
LCS_CALIBRATED_RGBが指定されていない場合、lcsEndpoints メンバーは無視されます。
lcsIntent
色域マッピング メソッド。 このメンバーには、次のいずれかの値を指定できます。
価値 | 意 | ICC 名 | 意味 |
---|---|---|---|
LCS_GM_ABS_ |
マッチ | 絶対比色 | 白い点を維持します。 色を宛先の色域で最も近い色に一致させます。 |
LCS_GM_ |
グラフィック | 飽和 | 彩度を維持します。 ビジネス チャートや、色が必要なその他の状況に使用されます。 |
LCS_GM_ |
証拠 | 相対比色 | カラーメトリックの一致を維持します。 グラフィック デザインや名前付き色に使用されます。 |
LCS_GM_ |
画像 | 知覚 | コントラストを維持します。 写真や自然な画像に使用されます。 |
lcsEndpoints
赤、緑、青のエンドポイント。
lcsGammaRed
赤い座標のスケール。
lcsGammaGreen
緑色の座標のスケール。
lcsGammaBlue
青い座標のスケール。
lcsFilename[MAX_PATH]
カラー プロファイル ファイルに名前を付けた null で終わる文字列。 通常、このメンバーは 0 に設定されますが、カラー プロファイルで指定されたとおりに色空間を設定するために使用できます。 これは、特定のプリンターの色値を入力するデバイスや、インストール可能なイメージ カラー マッチャーを使用する場合に便利です。 カラー プロファイルが指定されている場合、値が完全に正確でない場合でも、この構造体の他のすべてのメンバーを適切な値に設定する必要があります。
備考
パレットと同様ですが、ペンやブラシとは異なり、LogColorSpace を作成するときにポインターを渡す必要があります。
lcsCSType メンバーが LCS_sRGB または LCS_WINDOWS_COLOR_SPACE に設定されている場合、この構造体の他のメンバーは無視され、WCS は sRGB 色空間を使用します。 lcsEndpoints、lcsGammaRed、lcsGammaGreen、、および lcsGammaBlue メンバーを使用して、論理色空間を記述します。 lcsEndpoints メンバーは、色空間の RGB エンドポイントの x、y、z の値を含む CIEXYZTRIPLE です。
lcsGammaRed、lcsGammaGreen、および lcsGammaBlue に必要な DWORD ビット形式は、8 ビットずつ左シフトされた 8.8 固定小数点整数です。 つまり、8 つの整数ビットの後に 8 つの分数ビットが続きます。 ビット シフトを考慮すると、32 ビット DWORD の必要な形式は次のようになります。
00000000nnnnnnnnffffffff00000000
lcsFilename メンバーにファイル名が含まれており、lcsCSType メンバーが LCS_CALIBRATED_RGB に設定されている場合、WCS はこの構造体の他のメンバーを無視します。 ファイル内の色空間は、この LOGCOLORSPACE 構造体が参照する色空間として使用されます。
三刺激値X,Y,Zと色度値x,y,zの関係は次のとおりです。
x = X/(X+Y+Z)
y = Y/(X+Y+Z)
z = Z/(X+Y+Z)
lcsCSType メンバーが LCS_sRGB または LCS_WINDOWS_COLOR_SPACE に設定されている場合、この構造体の他のメンバーは無視され、ICM は sRGB 色空間を使用します。 CreateProfileFromLogColorSpace は lcsCSType メンバーを無視し、lcsEndpoints、lcsGammaRed、lcsGammaGreen、lcsGammaBlue メンバーを使用してプロファイルを作成するため、アプリケーションは構造体の残りの部分を初期化する必要があります。これは、LCS_sRGBまたはLCS_WINDOWS_COLOR_SPACE色空間の場合には初期化されない可能性があります。
手記
wingdi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして LOGCOLORSPACE を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダー | wingdi.h |
関連項目
CMYK を
RGB を