方向模糊效果
方向模糊效果類似于 Gaussian 模糊,但您可以扭曲特定方向的模糊。 您可以使用這個效果讓影像看起來就像在動作中,或強調動畫影像。
此效果的 CLSID CLSID_D2D1DirectionalBlur。
範例影像
之前 |
---|
After |
ComPtr<ID2D1Effect> directionalBlurEffect;
m_d2dContext->CreateEffect(CLSID_D2D1DirectionalBlur, &directionalBlurEffect);
directionalBlurEffect->SetInput(0, bitmap);
directionalBlurEffect->SetValue(D2D1_DIRECTIONALBLUR_PROP_STANDARD_DEVIATION, 7.0f);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(directionalBlurEffect.Get());
m_d2dContext->EndDraw();
效果屬性
顯示名稱和索引列舉 | Description |
---|---|
StandardDeviation D2D1_DIRECTIONALBLUR_PROP_STANDARD_DEVIATION |
要套用至影像的模糊量。 您可以將標準差乘以 3,以計算核心的模糊半徑。 標準差和模糊半徑的單位都是 DIP。 值為 0 的 DIP 會停用此效果。 此類型為 FLOAT。 預設值為 3.0f。 |
角度 D2D1_DIRECTIONALBLUR_PROP_ANGLE |
相對於 X 軸的模糊角度,以反時針方向顯示。 單位以度為單位指定。 模糊核心會先使用與 Gaussian 模糊 效果相同的程式來產生。 然後,核心值會根據模糊角度進行轉換。 此類型為 FLOAT。 預設值為 0.0f。 |
Optimization D2D1_DIRECTIONALBLUR_PROP_OPTIMIZATION |
優化模式。 如需詳細資訊,請參閱 優化模式 。 此類型D2D1_DIRECTIONALBLUR_OPTIMIZATION。 預設值為 D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED。 |
BorderMode D2D1_DIRECTIONALBLUR_PROP_BORDER_MODE |
用來計算影像框線、軟式或硬式的模式。 如需詳細資訊,請參閱 框線模式 。 此類型D2D1_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輸出點陣圖的大小會隨著模糊核心的大小增加,以圖元表示。 這些方程式可用來計算輸出點陣圖的大小。
需求 | 值 |
---|---|
輸出點陣圖成長 X | StandardDeviation (DIP) * 6 * ( (User DPI) / 96) * cos (Angle) ) |
輸出點陣圖成長 Y | StandardDeviation (DIP) * 6 * ( (User DPI) / 96) * sin (Angle) ) |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用于 Windows 7 的Windows 8和平臺更新 [傳統型應用程式 |Windows 市集應用程式] |
最低支援的伺服器 | 適用于 Windows 7 的Windows 8和平臺更新 [傳統型應用程式 |Windows 市集應用程式] |
標頭 | d2d1effects.h |
程式庫 | d2d1.lib、dxguid.lib |