Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Efekt morfologie slouží k tenkému nebo zahuštěnému ohraničení okrajů na obrázku. Tento efekt vytvoří jádro, které je 2 krát hodnoty Width a Height, které zadáte. Tento efekt zacentruje jádro na pixel, který počítá, a vrátí maximální hodnotu v jádru (pokud dilating) nebo minimální hodnotu v jádru (pokud jerodující).
CLSID pro tento efekt je CLSID_D2D1Morphology.
Ukázkové obrázky
Tento příklad ukazuje výstup efektu při použití režimu erode.
| Před |
|---|
|
| 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();
Vlastnosti efektu
| Zobrazovaný název a výčet indexu | Typ a výchozí hodnota | Popis |
|---|---|---|
| Režim D2D1_MORPHOLOGY_PROP_MODE |
D2D1_MORPHOLOGY_MODE D2D1_MORPHOLOGY_MODE_ERODE |
Režim morfologie. Dostupné režimy jsou erode (zploštělé) a dilate (zahuštěné). Další informace najdete v režimech morfologie. |
| Šířka D2D1_MORPHOLOGY_PROP_WIDTH |
UINT 1 |
Velikost jádra ve směru X. Jednotky jsou v jednotkách DIP. Hodnoty musí být v rozsahu 1 až 100 včetně. |
| Výška D2D1_MORPHOLOGY_PROP_HEIGHT |
UINT 1 |
Velikost jádra ve směru Y. Jednotky jsou v jednotkách DIP. Hodnoty musí být v rozsahu 1 až 100 včetně. |
Režimy morfologie
| Jméno | Popis |
|---|---|
| D2D1_MORPHOLOGY_MODE_ERODE | Použije se minimální hodnota z každého kanálu RGB v jádru. |
| D2D1_MORPHOLOGY_MODE_DILATE | Použije se maximální hodnota z každého kanálu RGB v jádru. |
Výstupní rastrový obrázek
U režimu DILATE roste velikost výstupního rastrového obrázku:
| Požadavek | Hodnota |
|---|---|
| Výstupní rastrový obrázek X = | INT(FLOAT(šířka) * ((DPI uživatele) / 96)) |
| Výstupní rastrový obrázek Růst Y = | INT(FLOAT(výška) * ((DPI uživatele) / 96)) |
V režimu ERODE se velikost výstupního rastrového obrázku zmenší:
| Požadavek | Hodnota |
|---|---|
| Výstupní rastrový obrázek X = | INT(FLOAT(-Width) * ((DPI uživatele) / 96)) |
| Výstupní rastrový obrázek Růst Y = | INT(FLOAT(-Height) * ((DPI uživatele) / 96)) |
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 |