次の方法で共有


ガウスぼかし効果

ガウスぼかし効果を使用して、入力画像全体に対するガウス関数に基づいてぼかしを作成します。

この効果を使用すると、光彩とドロップ シャドウを作成し、合成 効果を使用して元のイメージに結果を適用できます。 ハイライトや影などのフィルターの写真処理に役立ちます。 アルファ チャネルがぼやけているため、この効果の出力を使用して、反射照明 や拡散光 効果 などの照明効果を入力できます。また、照明効果ではアルファ チャネルを使用してサーフェス ジオメトリを高さマップとして決定します。

この効果は、組み込みの シャドウ 効果によって使用されます。

この効果の CLSID はCLSID_D2D1GaussianBlur。

画像の例

以前は
効果の前に画像を します。
変換後にイメージを します。
ComPtr<ID2D1Effect> gaussianBlurEffect;
m_d2dContext->CreateEffect(CLSID_D2D1GaussianBlur, &gaussianBlurEffect);

gaussianBlurEffect->SetInput(0, bitmap);
gaussianBlurEffect->SetValue(D2D1_GAUSSIANBLUR_PROP_STANDARD_DEVIATION, 3.0f);

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(gaussianBlurEffect.Get());
m_d2dContext->EndDraw();

Effect プロパティ

表示名とインデックス列挙 形容
StandardDeviation
D2D1_GAUSSIANBLUR_PROP_STANDARD_DEVIATION
画像に適用するぼかしの量。 標準偏差に 3 を乗算することで、カーネルのぼかし半径を計算できます。 標準偏差とぼかし半径の両方の単位は DIP です。 値が 0 の場合、この効果は完全に無効になります。 型は FLOAT です。
既定値は 3.0f です。
最適化
D2D1_GAUSSIANBLUR_PROP_OPTIMIZATION
最適化モード。 詳細については、「最適化モードの」を参照してください。 型がD2D1_GAUSSIANBLUR_OPTIMIZATION。
既定値は D2D1_GAUSSIANBLUR_OPTIMIZATION_BALANCED です。
BorderMode
D2D1_GAUSSIANBLUR_PROP_BORDER_MODE
イメージの境界線を計算するために使用されるモード(ソフトまたはハード)。 詳細については、「罫線モードの」を参照してください。
型がD2D1_GAUSSIANBLUR_BORDER_MODE。
既定値は D2D1_BORDER_MODE_SOFT です。

最適化モード

名前 形容
D2D1_DIRECTIONALBLUR_OPTIMIZATION_SPEED 比較的小さい半径での事前スケーリングなどの内部最適化を適用します。 線形フィルター処理を使用します。
D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED 速度モードと同じ最適化しきい値を使用しますが、三線フィルタリングを使用します。
D2D1_DIRECTIONALBLUR_OPTIMIZATION_QUALITY 近似値が表示される可能性が低い、大きなぼかし半径を持つ内部最適化のみを使用します。 三線フィルター処理を使用します。

罫線モード

名前 形容
D2D1_BORDER_MODE_SOFT ぼかしカーネルを適用すると、効果によってイメージが透明な黒いピクセルで埋め込まれるので、ぼかしが生まれます。
D2D1_BORDER_MODE_HARD 効果は、入力画像のサイズに出力をクランプします。 効果がブラー カーネルを適用すると、入力境界外のサンプルに対してミラー型の境界線変換で入力イメージが拡張されます。

出力ビットマップ

この効果の出力は、ぼかしの半径と境界線モードに基づいて入力ビットマップよりも大きくなる可能性があります。 境界線モードがD2D1_BORDER_MODE_SOFTに設定されている場合、出力ビットマップのサイズは、ピクセル単位で表されるブラー カーネルのサイズによって増加します。 次の表に、出力ビットマップの計算に使用できる数式を示します。

Output bitmap growth (X and Y) = StandardDeviation (DIPs)*6*((User DPI)/96)

そのため、画像のサイズが方向ごとに 10 ピクセル増加すると、画像の左上隅は (-5,-5) に配置され、右下は (105, 105) になります。

必要条件

要件 価値
サポートされる最小クライアント Windows 7 用 Windows 8 およびプラットフォーム更新プログラム [デスクトップ アプリ |[Windows ストア アプリ]
サポートされている最小サーバー Windows 7 用 Windows 8 およびプラットフォーム更新プログラム [デスクトップ アプリ |[Windows ストア アプリ]
ヘッダ d2d1effects.h
図書館 d2d1.lib、dxguid.lib

ID2D1Effect