Udostępnij za pośrednictwem


Efekt nasycenia

Użyj tego efektu, aby zmienić nasycenie obrazu. Efekt nasycenia jest specjalizacją macierzy kolorów .

Identyfikator CLSID dla tego efektu jest CLSID_D2D1Saturation.

Przykładowy obraz

W tym przykładzie przedstawiono obrazy wejściowe i wyjściowe efektu nasycenia z nasyceniem 0%.

Przed
obraz przed efektem.
Po
obraz po przekształceniu.
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();

Efekt oblicza macierz kolorów na podstawie wartości nasycenia (s w tym równaniu) przy użyciu właściwości D2D1_SATURATION_PROP_SATURATION. W tym miejscu pokazano równanie macierzy.

formułę do obliczania macierzy nasycenia.

Utworzona macierz zależy tylko od wartości nasycenia. Jeśli potrzebujesz określonej macierzy, możesz użyć macierzy kolorów .

Ten efekt korzysta z obrazów alfa z premultiplied i generuje je. Efekt nie będzie działać na prostych obrazach alfa, chyba że są w pełni nieprzezroczyste.

Właściwości efektu

Nazwa wyświetlana i wyliczenie indeksu Typ i wartość domyślna Opis
Nasycenie
D2D1_SATURATION_PROP_SATURATION
SPŁAWIK
0,5f
Nasycenie obrazu. Nasycenie można ustawić na wartość z zakresu od 0 do 1. Jeśli ustawisz go na 1, obraz wyjściowy jest w pełni nasycony. Jeśli ustawisz dla niego wartość 0, obraz wyjściowy będzie monochromatyczny. Wartość nasycenia jest bezjednostki.

Wymagania

Wymaganie Wartość
Minimalny obsługiwany klient Windows 8 i aktualizacja platformy dla systemu Windows 7 [aplikacje klasyczne | Aplikacje ze Sklepu Windows]
Minimalny obsługiwany serwer Windows 8 i aktualizacja platformy dla systemu Windows 7 [aplikacje klasyczne | Aplikacje ze Sklepu Windows]
Nagłówek d2d1effects.h
Biblioteka d2d1.lib, dxguid.lib

ID2D1Effect