7

私が GDI+ を気に入っているのは、パフォーマンスが高く、Windows XP に含まれているからです。ただし、そのぼかしクラスと効果クラスは、Windows Vista 以降にのみ付属する GDI+ 1.1 でのみ使用できます。Microsoft が Windows XP のサポートをまもなく終了する予定であるという事実にもかかわらず、依然として XP を使用しているユーザーの割合が依然として高いままです。消費者向けのソフトウェアを作成する場合は、Windows XP をサポートする必要があります。残念ながら、GDI+ 1.1 は XP では再配布できません。

オープンソースの画像ライブラリをいくつか試しました。ただし、ガウスぼかし操作などのパフォーマンスに関しては、gdi+ よりも大幅に遅くなります。

XP をサポートする GDI+ のより良い代替手段を推奨できる人はいますか?

4

2 に答える 2

3

GDI+ Blurがそのパフォーマンスに基づいて魅力的であることに驚きました。

GDI の前身とは異なり、GDI+ はハードウェア アクセラレーション (CPU ベースのレンダリング) ではないことに注意してください。XP、Vista、W7 での GDI/GDI+ の詳細については、2 つを比較するいくつかの基本的なレンダリング ベンチマークを含むこの記事を参照してください。

Abdias Software が言及しているように、レンダリングに DirectX を使用するため、WPF BlurEffect は優れたソリューションです。

高性能のガウス ブラーリングのもう 1 つのオプションは、GPU ベースのブラーを実装することです (OpenGL/GLSL、DirectX、Direct2D など、一部の GPU アクセラレーション API のシェーダーを介して)。例: http://callumhay.blogspot. com/2010/09/gaussian-blur-shader-glsl.html

于 2012-12-30T05:10:32.463 に答える
2

GDI+ はすでにLegacy graphicsの下にソートされています。

現在 MS が採用している代替手段は、Windows Presentation Foundation (略して WPF) です。これは XP でも利用でき、GDI+ よりも優れたパフォーマンスを発揮します。

または、昔のように、コードをゼロから作成します (万人向けではありませんが)。または、別の方法として、ビットマップをロックしてバッファを直接操作し、バイト配列を介して畳み込みまたは平均化を追加することもできます (ぼかしで使用されるように)。

注: GDI+ は、Matrix クラスを介して畳み込みをサポートします。

より低レベルで高性能なDirectXもあります。

個人的には GDI+ が好き/好きで、必要に応じてバッファ操作を使用します。MS がサポートを終了したとしても、これも XP もすぐになくなることは心配していません。

于 2012-12-28T22:36:28.597 に答える