Megosztás a következőn keresztül:


Fényerő effektus

A fényerő effektus használatával szabályozhatja a kép fényerejét.

Az effektus CLSID azonosítója CLSID_D2D1Brightness.

Példakép

Előtt
a képet az effektus előtt.
Után
a képet az átalakítás után.
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();

Effektus tulajdonságai

Tulajdonság megjelenítendő neve Típus és alapértelmezett érték Leírás
WhitePoint
D2D1_BRIGHTNESS_PROP_WHITE_POINT
D2D1_VECTOR_2F
{1.0f, 1.0f}
A fényerőátviteli görbe felső része. A fehér pont a kép világosabb részeinek megjelenését állítja be. Ez a tulajdonság az x és az y értékre is igaz ebben a sorrendben. A tulajdonság minden értéke 0 és 1 között van, beleértve az értékeket is.
BlackPoint
D2D1_BRIGHTNESS_PROP_BLACK_POINT
D2D1_VECTOR_2F
{0.0f, 0.0f}
A fényerőátviteli görbe alsó része. A fekete pont a kép sötétebb részeinek megjelenését állítja be. Ez a tulajdonság az x és az y értékre is igaz ebben a sorrendben. A tulajdonság minden értéke 0 és 1 között van, beleértve az értékeket is.

Ez az effektus a megadott fehér és fekete pontokat használja a bitkép módosításához használt átviteli függvény létrehozásához. A következő egyenlet az átviteli függvényt írja le. A bemeneti intenzitások 0 és 1 között vannak meghatározva.

fényerő-algoritmus

Az effektus-algoritmus implementál egy egyenletet, amely létrehozza az átviteli függvényt. Ezt a függvényt használjuk a kép képpontjainak módosításához. A fekete pont és a fehér pont x és y értékei az átalakításhoz csatlakozó két dimenzió koordinátái. A végső kimeneti egyenlet minden része:

  1. A képadatokat lineáris térből nem lineáris térzé alakítja a következő egyenlettel:1. segédfüggvény

  2. A rendszerképet az alábbi értékek szerint állítja be:

    • bemeneti a bemeneti kép képpontintenzitási értékei 0 és 1 között.

    • *Fehér Pt. (x, y)*az átalakító görbe helye a világosabb képpontintenzitás érdekében.

    • Fekete pt. (x, y) a képpontintenzitások intenzitásának átalakítási görbéjének helye.

  3. Ezzel az egyenlettel konvertálja vissza a képadatokat lineáris térbe: 2. segédfüggvény

A végső kimeneti egyenlet és az összetevők itt láthatók.

teljes számítások a fényerő-beállítási

Kimeneti bitkép

A kimeneti bitkép mérete megegyezik a bemeneti bitkép méretével.

Követelmények

Követelmény Érték
Minimálisan támogatott ügyfél Windows 8 és Platform Update for Windows 7 [asztali alkalmazások | Windows Áruházbeli alkalmazások]
Minimálisan támogatott kiszolgáló Windows 8 és Platform Update for Windows 7 [asztali alkalmazások | Windows Áruházbeli alkalmazások]
Fejléc d2d1effects.h
Könyvtár d2d1.lib, dxguid.lib

ID2D1Effect