Efekt morfologii
Użyj efektu morfologii do cienkich lub zagęszczanych granic krawędzi na obrazie. Ten efekt tworzy jądro, które jest 2 razy krotnie określone wartości Width (Szerokość) i Height (Wysokość). Ten efekt wyśrodkuje jądro na pikselach, które oblicza i zwraca maksymalną wartość w jądrze (jeśli jest rozszerzana) lub minimalna wartość w jądrze (jeśli eroduje).
Identyfikator CLSID dla tego efektu jest CLSID_D2D1Morphology.
Przykładowe obrazy
W tym przykładzie przedstawiono dane wyjściowe efektu podczas korzystania z trybu erode.
Przed |
---|
![]() |
Po |
![]() |
ComPtr<ID2D1Effect> morphologyEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Morphology, &morphologyEffect);
morphologyEffect->SetInput(0, bitmap);
morphologyEffect->SetValue(D2D1_MORPHOLOGY_PROP_MODE, D2D1_MORPHOLOGY_MODE_ERODE);
morphologyEffect->SetValue(D2D1_MORPHOLOGY_PROP_WIDTH, 14);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(morphologyEffect.Get());
m_d2dContext->EndDraw();
Właściwości efektu
Tryby morfologii
Nazwa | Opis |
---|---|
D2D1_MORPHOLOGY_MODE_ERODE | Używana jest minimalna wartość z każdego kanału RGB w jądrze. |
D2D1_MORPHOLOGY_MODE_DILATE | Jest używana maksymalna wartość z każdego kanału RGB w jądrze. |
Mapa bitowa wyjściowa
W przypadku trybu DILATE rozmiar mapy bitowej danych wyjściowych rośnie:
Wymaganie | Wartość |
---|---|
Wzrost mapy bitowej wyjściowej X = | INT(FLOAT(Width) * ((User DPI) / 96)) |
Wzrost mapy bitowej danych wyjściowych Y = | INT(FLOAT(Height) * ((User DPI) / 96)) |
W przypadku trybu ERODE rozmiar mapy bitowej danych wyjściowych zmniejsza się:
Wymaganie | Wartość |
---|---|
Wzrost mapy bitowej wyjściowej X = | INT(FLOAT(-Width) * ((DPI użytkownika) / 96)) |
Wzrost mapy bitowej danych wyjściowych Y = | INT(FLOAT(-Height) * ((DPI użytkownika) / 96)) |
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 |