Efek morfologi
Gunakan efek morfologi untuk men tipis atau mengentalkan batas tepi dalam gambar. Efek ini membuat kernel yang 2 kali nilai Lebar dan Tinggi yang Anda tentukan. Efek ini memusatkan kernel pada piksel yang dihitung dan mengembalikan nilai maksimum dalam kernel (jika melebar) atau nilai minimum dalam kernel (jika eroding).
CLSID untuk efek ini CLSID_D2D1Morphology.
Contoh gambar
Contoh ini menunjukkan output efek saat menggunakan mode erode.
Sebelum |
---|
![]() |
Sesudah |
![]() |
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();
Properti efek
Mode morfologi
Nama | Deskripsi |
---|---|
D2D1_MORPHOLOGY_MODE_ERODE | Nilai minimum dari setiap saluran RGB dalam kernel digunakan. |
D2D1_MORPHOLOGY_MODE_DILATE | Nilai maksimum dari setiap saluran RGB dalam kernel digunakan. |
Bitmap output
Untuk mode DILATE, ukuran Bitmap Output tumbuh:
Syarat | Nilai |
---|---|
Output Bitmap Growth X = | INT(FLOAT(Width) * ((User DPI) / 96)) |
Output Bitmap Growth Y = | INT(FLOAT(Height) * ((User DPI) / 96)) |
Untuk mode ERODE, ukuran Bitmap Output menyusut:
Syarat | Nilai |
---|---|
Output Bitmap Growth X = | INT(FLOAT(-Width) * ((User DPI) / 96)) |
Output Bitmap Growth Y = | INT(FLOAT(-Height) * ((User DPI) / 96)) |
Persyaratan
Syarat | Nilai |
---|---|
Klien minimum yang didukung | Pembaruan Windows 8 dan Platform untuk Windows 7 [aplikasi desktop | Aplikasi Bursa Windows] |
Server minimum yang didukung | Pembaruan Windows 8 dan Platform untuk Windows 7 [aplikasi desktop | Aplikasi Bursa Windows] |
Header | d2d1effects.h |
Perpustakaan | d2d1.lib, dxguid.lib |