Efekt jasu
Pomocí efektu jasu můžete řídit jas obrázku.
CLSID pro tento efekt je CLSID_D2D1Brightness.
Příklad obrázku
Před |
---|
![]() |
Po |
![]() |
ComPtr<ID2D1Effect> brightnessEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Brightness, &brightnessEffect);
brightnessEffect->SetValue(D2D1_BRIGHTNESS_PROP_BLACK_POINT, D2D1::Vector2F(0.0f, 0.2f));
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(brightnessEffect.Get());
m_d2dContext->EndDraw();
Vlastnosti efektu
Zobrazovaný název vlastnosti | Typ a výchozí hodnota | Popis |
---|---|---|
WhitePoint D2D1_BRIGHTNESS_PROP_WHITE_POINT |
D2D1_VECTOR_2F {1.0f, 1.0f} |
Horní část křivky přenosu jasu. Bílý bod upraví vzhled jasnějších částí obrázku. Tato vlastnost je určena pro hodnotu x i hodnotu y v tomto pořadí. Každá z hodnot této vlastnosti je v rozmezí od 0 do 1 (včetně). |
BlackPoint D2D1_BRIGHTNESS_PROP_BLACK_POINT |
D2D1_VECTOR_2F {0.0f, 0.0f} |
Dolní část křivky přenosu jasu. Černý bod upraví vzhled tmavších částí obrázku. Tato vlastnost je určena pro hodnotu x i hodnotu y v tomto pořadí. Každá z hodnot této vlastnosti je v rozmezí od 0 do 1 (včetně). |
Tento efekt používá zadané bílé a černé body k vygenerování funkce přenosu použité k úpravě rastrového obrázku. Další rovnice popisuje funkci přenosu. Intenzity vstupu jsou definovány mezi 0 a 1.
Algoritmus efektu implementuje rovnici, která vytvoří funkci přenosu. Tuto funkci používáme k úpravě obrazových pixelů. Hodnoty x a y černého bodu a bílého bodu jsou souřadnice ve dvou dimenzích, které jsou spojené s transformací. Každá část konečné výstupní rovnice:
Převede data obrázku z lineárního prostoru na nelineární prostor pomocí této rovnice:
Upraví obrázek podle těchto hodnot:
vstupní je hodnota intenzity vstupního obrázku v pixelech od 0 do 1.
*Bílý pt. (x, y)*umístění transformační křivky pro světlejší intenzitu pixelů.
Černý pt. (x, y) je umístění transformační křivky pro intenzity střižných pixelů.
Převede data obrázku zpět na lineární prostor pomocí této rovnice:
Tady je znázorněna konečná výstupní rovnice a součásti.
Výstupní rastrový obrázek
Velikost výstupního rastrového obrázku je stejná jako velikost vstupního rastrového obrázku.
Požadavky
Požadavek | Hodnota |
---|---|
Minimální podporovaný klient | Windows 8 a Aktualizace platformy pro Windows 7 [desktopové aplikace | Aplikace pro Windows Store] |
Minimální podporovaný server | Windows 8 a Aktualizace platformy pro Windows 7 [desktopové aplikace | Aplikace pro Windows Store] |
Záhlaví | d2d1effects.h |
Knihovna | d2d1.lib, dxguid.lib |