色管理効果
カラー管理効果を使用して、1 つの ICC (国際カラー コンソーシアム) カラー プロファイルから別のカラー プロファイルに画像を変換します。 効果は、ICC仕様に従って画像を変換します.
この効果の CLSID はCLSID_D2D1ColorManagement。
- Effect プロパティ
- レンダリング意図モード
- 入力イメージのアルファ モード
- ICC仕様への準拠
- アルファ チャネルの動作 を する
- 品質モードの
- サンプル コード
- 要件の
- 関連トピック
Effect プロパティ
意図モードのレンダリング
列挙 | 形容 |
---|---|
D2D1_COLORMANAGEMENT_RENDERING_INTENT_PERCEPTUAL | 効果は、デバイスの色域を埋めるために画像の全色域を圧縮または拡張し、色の詳細を維持しながら比色精度を犠牲にする知覚的に満足のいく出力を生成します。 写真などの実生活コンテンツの一般的な再現に役立ちます。 |
D2D1_COLORMANAGEMENT_RENDERING_INTENT_RELATIVE_COLORIMETRIC | 効果は、出力デバイスがレンダリングできる最も近い色にレンダリングできる色域の外側にあるすべての色を調整します。 白い点は保持されません。 |
D2D1_COLORMANAGEMENT_RENDERING_INTENT_SATURATION | この効果は、色合いと明るさを犠牲にして、イメージ内の純粋な色の彩度を維持します。 これは、グラフや図などのグラフィックスに役立ちます。 |
D2D1_COLORMANAGEMENT_RENDERING_INTENT_ABSOLUTE_COLORIMETRIC | 効果は、出力デバイスがレンダリングできる最も近い色にレンダリングできる色域の外側にあるすべての色を調整します。 効果は色域内の色を変更せず、白い点を保持します。 |
入力イメージのアルファ モード
列挙 | 形容 |
---|---|
D2D1_COLORMANAGEMENT_ALPHA_MODE_PREMULTIPLIED | この効果は、アルファ モードがプリマルチプライ済みであることを前提としています。 |
D2D1_COLORMANAGEMENT_ALPHA_MODE_STRAIGHT | この効果は、アルファ モードが直線であることを前提としています。 |
D2D1_GAMMA1_G2084動作の変更
アプリケーションで、D2D1_GAMMA1_G2084 領域、または SMPTE ST.2084 (Perceptual クオンタイザー) 色空間を使用する DXGI_COLOR_SPACE_TYPE 列挙値のいずれかを使用している場合、アプリケーションは HDR データを操作する予定です。
ID2D1DeviceContext5::CreateColorContextFromSimpleColorProfile と ID2D1DeviceContext5::CreateColorContextFromDxgiColorSpace API は、そのことを考慮していません。代わりに、HDR コンテンツは、G2084 DeGamma 操作中に 0 から 1 の範囲に収まるようにスケーリングされます。
実際には、このガンマ空間でエンコードされたコンテンツは、10,000 ニトの参照 WhiteLevel を使用します。これは通常、CCCS では 10,000 / 80 = 125.0 として表されます。 そのため、アプリを容易にするために、このガンマ変換では輝度を 125 倍にスケーリングするのが最も簡単です。 Windows 10 バージョン 1809 (10.0;ビルド 17763)、カラー管理効果の動作は、このスケーリングを適用するようなものです。 つまり、開発者は、2 つ目の White レベル調整効果をパイプラインに 適用する必要はありません。
ICC 仕様への準拠
カラー管理効果はICC v4.3仕様に準拠し、次の制限があります。
- 効果は、1、3、および 4 チャネルの色空間をサポートします。
- 効果は ColorSpace プロファイルまたは名前付きカラー プロファイルをサポートしていません。
アルファ チャネルの動作
一般に、ソース イメージにアルファ データがない場合はアルファを 1 (不透明) に設定し、ターゲット イメージにスペースがない場合はアルファ データは破棄されます。 次の表では、アルファ動作について説明します。
ソースの色空間、ピクセル形式 | 宛先の色空間、ピクセル形式 | アルファ動作 |
---|---|---|
1 チャンネル、R ピクセル形式 |
1 チャンネル、R ピクセル形式 | (アルファ データなし) |
1 チャンネル、RGBA ピクセル形式 | アルファ データが 1 に設定されている (不透明) | |
3 チャンネル、RGBA ピクセル形式 | アルファ データが 1 に設定されている (不透明) | |
4 チャンネル、RGBA ピクセル形式 | (アルファ データなし) | |
1 チャンネル、RGBA ピクセル形式 |
1 チャンネル、R ピクセル形式 | アルファ データが破棄される |
1 チャンネル、RGBA ピクセル形式 | アルファ データがパススルーされる | |
3 チャンネル、RGBA ピクセル形式 | アルファ データがパススルーされる | |
4 チャンネル、RGBA ピクセル形式 | アルファ データが破棄される | |
3 チャンネル、RGBA ピクセル形式 |
1 チャンネル、R ピクセル形式 | アルファ データが破棄される |
1 チャンネル、RGBA ピクセル形式 | アルファ データがパススルーされる | |
3 チャンネル、RGBA ピクセル形式 | アルファ データがパススルーされる | |
4 チャンネル、RGBA ピクセル形式 | アルファ データが破棄される | |
4 チャンネル、RGBA ピクセル形式 |
1 チャンネル、R ピクセル形式 | (アルファ データなし) |
1 チャンネル、RGBA ピクセル形式 | アルファ データが 1 に設定されている (不透明) | |
3 チャンネル、RGBA ピクセル形式 | アルファ データが 1 に設定されている (不透明) | |
4 チャンネル、RGBA ピクセル形式 | (アルファ データなし) |
品質モード
モード | 形容 |
---|---|
D2D1_COLORMANAGEMENT_QUALITY_PROOF | 最も低品質のモード。 このモードには、機能レベル 9_1 以上が必要です。 |
D2D1_COLORMANAGEMENT_QUALITY_NORMAL | 通常の品質モード。 このモードには、機能レベル 9_1 以上が必要です。 |
D2D1_COLORMANAGEMENT_QUALITY_BEST | 最高品質のモード。 このモードでは、機能レベル 10_0 以上と浮動小数点精度バッファーが必要です。 このモードは、ICC v4.3仕様で定義されている浮動小数点精度と拡張範囲をサポートします。 |
アプリケーションがハードウェアでサポートされていない品質モードを要求した場合、描画時に色管理効果が失敗します。 D3D11CreateDevice呼び出すときに、機能レベルを決定できます。 id2D1EffectContext::IsBufferPrecisionSupported を呼び出し、値が D2D1_BUFFER_PRECISION_32BPC_FLOAT することで、浮動小数点バッファーのサポートを確認できます。
サンプル コード
この効果の例については、Direct2D 効果の写真調整サンプルをダウンロードし、サンプルのレッスン 4 を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 7 用 Windows 8 およびプラットフォーム更新プログラム [デスクトップ アプリ |[Windows ストア アプリ] |
サポートされている最小サーバー | Windows 7 用 Windows 8 およびプラットフォーム更新プログラム [デスクトップ アプリ |[Windows ストア アプリ] |
ヘッダ | d2d1effects.h |
図書館 | d2d1.lib、dxguid.lib |