エッジ検出効果
画像の内容をフィルター処理し、画像のコントラストセクションの端に線を残します。
この効果の 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();
Effect プロパティ
エッジ検出効果のプロパティは、 D2D1_EDGEDETECTION_PROP 列挙によって定義されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 [デスクトップ アプリ |Windows ストア アプリ] |
サポートされている最小のサーバー | Windows 10 [デスクトップ アプリ |Windows ストア アプリ] |
Header | d2d1effects_2.h |
ライブラリ | d2d1.lib、dxguid.lib |