Sättigungseffekt
Verwenden Sie diesen Effekt, um die Sättigung eines Bilds zu ändern. Der Sättigungseffekt ist eine Spezialisierung des Farbmatrixeffekts .
Die CLSID für diesen Effekt ist CLSID_D2D1Saturation.
Beispielbild
Das hier gezeigte Beispiel zeigt die Eingabe- und Ausgabebilder des Sättigungseffekts mit einer Sättigung von 0 %.
Vorher |
---|
Nach |
ComPtr<ID2D1Effect> saturationEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Saturation, &saturationEffect);
saturationEffect->SetInput(0, bitmap);
saturationEffect->SetValue(D2D1_SATURATION_PROP_SATURATION, 0.0f);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(saturationEffect.Get());
m_d2dContext->EndDraw();
Der Effekt berechnet eine Farbmatrix basierend auf dem Sättigungswert (s in der Gleichung hier), den Sie mit der D2D1_SATURATION_PROP_SATURATION-Eigenschaft angeben. Die Matrixgleichung ist hier dargestellt.
Die erstellte Matrix hängt nur vom Sättigungswert ab. Sie können den Farbmatrixeffekt verwenden, wenn Sie eine bestimmte Matrix benötigen.
Dieser Effekt nutzt und gibt vormultiplizierte Alphabilder aus. Der Effekt funktioniert nicht auf geraden Alphabildern, es sei denn, sie sind vollständig undurchsichtig.
Effekteigenschaften
Anzeigename und Indexaufzählung | Typ und Standardwert | Beschreibung |
---|---|---|
Sättigung D2D1_SATURATION_PROP_SATURATION |
GLEITKOMMAZAHL 0,5f |
Die Sättigung des Bilds. Sie können die Sättigung auf einen Wert zwischen 0 und 1 festlegen. Wenn Sie es auf 1 festlegen, ist das Ausgabebild vollständig gesättigt. Wenn Sie es auf 0 festlegen, ist das Ausgabebild monochrom. Der Sättigungswert ist einheitslos. |
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 |