Effekt der direktionalen Unschärfe
Der Effekt der direktionalen Unschärfe ähnelt der gaußschen Unschärfe, aber Sie können die Unschärfe in eine bestimmte Richtung verschieben. Sie können diesen Effekt verwenden, um ein Bild so aussehen zu lassen, als ob es sich in Bewegung befindet, oder um ein animiertes Bild hervorzuheben.
Die CLSID für diesen Effekt ist CLSID_D2D1DirectionalBlur.
- Beispielbild
- Effekteigenschaften
- Optimierungsmodi
- Rahmenmodi
- Ausgabe-Bitmap
- Anforderungen
- Zugehörige Themen
Beispielbild
Vorher |
---|
Nach |
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();
Effekteigenschaften
Anzeigename und Indexaufzählung | Beschreibung |
---|---|
StandardDeviation (Standardabweichung) D2D1_DIRECTIONALBLUR_PROP_STANDARD_DEVIATION |
Die Auf das Bild anzuwendende Unschärfe. Sie können den Unschärfenradius des Kernels berechnen, indem Sie die Standardabweichung mit 3 multiplizieren. Die Einheiten der Standardabweichung und des Unschärferadius sind DIPs. Der Wert 0 DIPs deaktiviert diesen Effekt. Der Typ ist FLOAT. Der Standardwert ist 3.0f. |
Angle D2D1_DIRECTIONALBLUR_PROP_ANGLE |
Der Winkel der Unschärfe relativ zur x-Achse in entgegenzeiger Richtung. Die Einheiten werden in Grad angegeben. Der Unschärfenkern wird zuerst mit demselben Prozess wie beim Gaußschen Weichzeichnereffekt generiert. Die Kernelwerte werden dann entsprechend dem Weichzeichnerwinkel transformiert. Der Typ ist FLOAT. Der Standardwert ist 0.0f. |
Optimization D2D1_DIRECTIONALBLUR_PROP_OPTIMIZATION |
Der Optimierungsmodus. Weitere Informationen finden Sie unter Optimierungsmodi . Der Typ ist D2D1_DIRECTIONALBLUR_OPTIMIZATION. Der Standardwert ist D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED. |
BorderMode D2D1_DIRECTIONALBLUR_PROP_BORDER_MODE |
Der Modus, der zum Berechnen des Rahmens des Bilds verwendet wird, weich oder hart. Weitere Informationen finden Sie unter Rahmenmodi . Der Typ ist D2D1_BORDER_MODE. Der Standardwert ist D2D1_BORDER_MODE_SOFT. |
Optimierungsmodi
Name | Beschreibung |
---|---|
D2D1_DIRECTIONALBLUR_OPTIMIZATION_SPEED | Wendet interne Optimierungen wie die Vorskalierung bei relativ kleinen Radien an. Verwendet lineare Filterung. |
D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED | Verwendet dieselben Optimierungsschwellenwerte wie der Geschwindigkeitsmodus, verwendet jedoch die trilineare Filterung. |
D2D1_DIRECTIONALBLUR_OPTIMIZATION_QUALITY | Verwendet nur interne Optimierungen mit großen Unschärferadien, bei denen Näherungen weniger wahrscheinlich sichtbar sind. Verwendet trilineare Filterung. |
Rahmenmodi
Name | Beschreibung |
---|---|
D2D1_BORDER_MODE_SOFT | Der Effekt polstert das Bild mit transparenten schwarzen Pixeln, während er den Weichzeichnerkern anwendet, was zu einem weichen Rand führt. |
D2D1_BORDER_MODE_HARD | Der Effekt klemmt die Ausgabe an die Größe des Eingabebilds. Wenn der Effekt den Unschärfenkern anwendet, erweitert er das Eingabebild mit einer Spiegel Rahmentransformation für Beispiele außerhalb der Eingabegrenzen. |
Ausgabe-Bitmap
Die Größe der Ausgabe-Bitmap wird basierend auf der Standardabweichung, dem Winkel des Effekts und dem Rahmenmodus erhöht. Wenn der Rahmenmodus auf D2D1_BORDER_MODE_SOFT erhöht sich die Größe der Ausgabe-Bitmap um die Größe des In Pixel dargestellten Weichzeichnerkerns. Diese Formeln können verwendet werden, um die Größe der Ausgabebitbitbit zu berechnen.
Anforderung | Wert |
---|---|
Ausgabe bitmap Growth X | StandardDeviation (DIPs) * 6 * ((User DPI) / 96) * cos (Angle)) |
Bitmapwachstum der Ausgabe Y | StandardDeviation (DIPs) * 6 * ((User DPI) / 96) * sin(Angle)) |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | Windows Store-Apps] |
Unterstützte Mindestversion (Server) | Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | Windows Store-Apps] |
Header | d2d1effects.h |
Bibliothek | d2d1.lib, dxguid.lib |