Udostępnij za pośrednictwem


Efekt kontrastu

Zwiększa lub zmniejsza kontrast obrazu.

Identyfikator CLSID dla tego efektu jest CLSID_D2D1Contrast.

Funkcja kontrastu modyfikuje każdą wartość kanału kolorów przy użyciu dwóch dwuczęściowych wielomianów kwadratowych, które spełniają ciągłość nachylenia w punkcie (0,5, 0,5).

wielomiany kwadratowe, które spełniają ciągłość nachylenia w punkcie (0,5, 0,5)

Przykładowe obrazy

W tym przykładzie pokazano dane wyjściowe efektu z zastosowanym maksymalnym kontrastem (Kontrast = 1,0).

Przed

obraz przed zastosowaniem efektu

Po

obraz po zastosowaniu efektu

Przykładowy kod

ComPtr<ID2D1Effect> contrastEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Contrast, &contrastEffect);
 
contrastEffect->SetInput(0, bitmap);
contrastEffect->SetValue(D2D1_CONTRAST_PROP_CONTRAST, 0.5f);
contrastEffect->SetValue(D2D1_CONTRAST_PROP_CLAMP_INPUT, TRUE);
 
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(contrastEffect.Get());
m_d2dContext->EndDraw();

Właściwości efektu

Właściwości efektu kontrastu są definiowane przez wyliczenie D2D1_CONTRAST_PROP.

Wymagania

Wymaganie Wartość
Minimalny obsługiwany klient Windows 10 [aplikacje klasyczne | Aplikacje ze Sklepu Windows]
Minimalny obsługiwany serwer Windows 10 [aplikacje klasyczne | Aplikacje ze Sklepu Windows]
Nagłówek d2d1effects_2.h
Biblioteka d2d1.lib, dxguid.lib