5

パフォーマンス上の理由から、アプリケーションを GDI+ から Direct2D に移行しようとしています。

以前は、HALFTONE モードで StretchBlt() を使用していましたが、これは素晴らしい結果をもたらしましたが、結果が遅くなりました。

現在、RenderTarget->DrawBitmap() を使用して Direct2D で描画していますが、LINEAR と NEAREST_NEIGHBOR の 2 つのモードしかなく、どちらもあまり優れていません。LINEAR の方が優れていますが、依然としてひどいアーティファクトが生成されます。

Direct2D には高品質のスケーリング オプションがありますか? そうでない場合は、GDI を使用したほうがよいでしょうか、それとも別のオプションがありますか? これは、さまざまな Win32 コントロールを備えたウィンドウで実行される Windows アプリケーションです。

4

1 に答える 1

8

Direct2D 1.0 は、線形および最近傍補間のみをサポートしていました。Direct2D 1.1 では、4 つの補間アルゴリズムが追加されています。これらは、新しいデバイス コンテキスト レンダー ターゲット ( ID2D1DeviceContext) とそのDrawBitmapおよびDrawImageメソッドを通じて利用できます。D2D1_INTERPOLATION_MODE列挙型を見てください:

http://msdn.com/library/hh447004.aspx

于 2013-01-28T00:28:58.857 に答える