0

私の Windows ストア アプリケーションでは、C++ で Direct2D を使用してパス ジオメトリを描画する必要があります。私のシナリオでは、基本的なオブジェクトを使用する代わりにPolyline、アプリケーションのパフォーマンスを向上させるために Direct2D を使用します。したがって、私の C# アプリケーションは、Direct2D 描画のために C++ コンポーネントと通信します。

このリンクは、 の Direct2D 描画に関する詳細情報を取得するのに役立ちましたPathGeometry。ただし、ウィンドウ ハンドルでジオメトリを描画しますが、ウィンドウ ハンドルを使用するのではなく、通常のUIElementレンダリングのように描画を行う必要があります。問題を解決するためのサンプルはネット上にありますか?

4

2 に答える 2

0

SurfaceImageSource を作成したファクトリを使用する必要があります。新しい工場を作るべきではありません。したがって、次のようなコードになります。

 ID2D1Factory *pFactory=nullptr;
 d2dDevice->GetFactory(&pFactory);
 ID2D1GeometrySink *pSink = NULL;
 ID2D1PathGeometry *pPathGeometry=NULL;
 // Create a path geometry.
 HRESULT hr = pFactory->CreatePathGeometry(&pPathGeometry);

最後に、それは私の問題を解決しました。

于 2013-08-07T12:21:24.410 に答える