Win32 API 日本語リファレンス
ホームGraphics.Direct2D › D2D1_GAMMA

D2D1_GAMMA

列挙型
基底型i4

メンバー 2

名前10進16進説明
D2D1_GAMMA_2_200x0標準 RGB (sRGB) ガンマで補間を実行します。
D2D1_GAMMA_1_010x1線形ガンマの色空間で補間を実行します。

公式ドキュメント

補間に使用するガンマを指定します。

解説(Remarks)

線形ガンマ空間 (D2D1_GAMMA_1_0) で補間すると、ガンマが 1.0 ではない空間 (ガンマが 2.2 である既定の sRGB 色空間など) においてガンマ補正の影響によって生じる知覚上の明るさの変化を回避できます。これら 2 つのブレンド モードの違いの例として、次の図を考えます。この図は、赤から青、そして緑へとブレンドする 2 つのグラデーションを示しています。

sRGB ガンマと線形ガンマを使用してブレンドした、赤から青、緑へと変化する 2 つのグラデーションの図

1 つ目のグラデーションはレンダー ターゲットの空間 (この場合は sRGB) で線形に補間されており、各色の間に暗い帯が見えます。2 つ目のグラデーションはガンマ補正された線形補間を使用しているため、同じような明るさの変動は現れません。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum D2D1_GAMMA : int {
    D2D1_GAMMA_2_2 = 0,
    D2D1_GAMMA_1_0 = 1
} D2D1_GAMMA;
public enum D2D1_GAMMA : int
{
    D2D1_GAMMA_2_2 = 0,
    D2D1_GAMMA_1_0 = 1,
}
Public Enum D2D1_GAMMA As Integer
    D2D1_GAMMA_2_2 = 0
    D2D1_GAMMA_1_0 = 1
End Enum
import enum

class D2D1_GAMMA(enum.IntEnum):
    D2D1_GAMMA_2_2 = 0
    D2D1_GAMMA_1_0 = 1
// D2D1_GAMMA
pub const D2D1_GAMMA_2_2: i32 = 0;
pub const D2D1_GAMMA_1_0: i32 = 1;
// D2D1_GAMMA
const (
	D2D1_GAMMA_2_2 int32 = 0
	D2D1_GAMMA_1_0 int32 = 1
)
const
  D2D1_GAMMA_2_2 = 0;
  D2D1_GAMMA_1_0 = 1;
// D2D1_GAMMA
pub const D2D1_GAMMA_2_2: i32 = 0;
pub const D2D1_GAMMA_1_0: i32 = 1;
const
  D2D1_GAMMA_2_2* = 0
  D2D1_GAMMA_1_0* = 1
enum D2D1_GAMMA : int {
    D2D1_GAMMA_2_2 = 0,
    D2D1_GAMMA_1_0 = 1,
}
#define global D2D1_GAMMA_2_2 0x0
#define global D2D1_GAMMA_1_0 0x1