Эффект обнаружения пограничных границ
Фильтрует содержимое изображения, оставляя линии по краям контрастных разделов изображения.
CLSID для этого эффекта CLSID_D2D1EdgeDetection.
Пример изображения
Образец кода
ComPtr<ID2D1Effect> edgeDetectionEffect;
m_d2dContext->CreateEffect(CLSID_D2D1EdgeDetection, &edgeDetectionEffect);
edgeDetectionEffect->SetInput(0, bitmap);
edgeDetectionEffect->SetValue(D2D1_EDGEDETECTION_PROP_STRENGTH, 0.5f);
edgeDetectionEffect->SetValue(D2D1_EDGEDETECTION_PROP_BLUR_RADIUS, 0.0f);
edgeDetectionEffect->SetValue(D2D1_EDGEDETECTION_PROP_MODE, D2D1_EDGEDETECTION_MODE_SOBEL);
edgeDetectionEffect->SetValue(D2D1_EDGEDETECTION_PROP_OVERLAY_EDGES, false);
edgeDetectionEffect->SetValue(D2D1_EDGEDETECTION_PROP_ALPHA_MODE, D2D1_ALPHA_MODE_PREMULTIPLIED);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(edgeDetectionEffect.Get());
m_d2dContext->EndDraw();
Свойства эффекта
Свойства для эффекта обнаружения ребер определяются перечислением D2D1_EDGEDETECTION_PROP .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 [классические приложения | Приложения Магазина Windows] |
Минимальная версия сервера | Windows 10 [классические приложения | Приложения Магазина Windows] |
Заголовок | d2d1effects_2.h |
Библиотека | d2d1.lib, dxguid.lib |