質問

WindowsでGDI +、Java、およびPhotoshopとGimpが提供するアンチエイリアシングを見てきました。ホストOSのサポートに依存せずにアンチエイリアス機能を提供する他のライブラリはありますか?

役に立ちましたか?

解決

Antigrain Geometry は、ソフトウェアでアンチエイリアスグラフィックを提供します。

他のヒント

サイモンが指摘したように、アンチエイリアスという用語はかなり頻繁に誤用/乱用されているため、何をしようとしているかを正確に知ることは常に役立ちます。

GDIについて言及しているので、サイズを変更する際にきれいなエッジを維持することについて話していると仮定します-フォントの文字のようなものはきれいに見え、元のサイズの2倍または3倍にサイズ変更してもピクセル化されません。これらの種類の事柄について、過去にアルファテスト済み拡大と呼ばれる手法を使用しました-ホワイトペーパーはこちらで読むことができます:

http://www.valvesoftware.com/publications/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf

実装するとき、すべてのタイプのオブジェクトでより良いエッジを取得できるように複数のプレーンを使用しましたが、最後に向かって簡単にカバーします。ベクター画像をスケーリングするときに品質を維持するためのすべてのアプローチ(私が使用した)のうち、これが最も簡単で最高の品質でした。これには、ハードウェアで簡単に実装できるという利点もあります。既存のAPIの観点から見ると、最善の策はOpenGLまたはDirect3Dのいずれかを使用することです-言われていることですが、実際に実行するのはバイリニアフィルター処理とテクスチャマップのみです。常に長方形を扱い、スケーリングのみを行う必要がある場合、それは非常に簡単で、回転を追加してもそれほど複雑にはなりません。自分でロールバックする場合は、サブピクセルの配置(フルピクセルに該当しないピクセル位置の解決方法に特に注意してください。これは品質にとって重要であり、見落とされることもあります。

役立つことを願っています!

使用できるアンチエイリアシングアプローチは(多くの場合、誤って命名されていますが、それは死んだ馬です)。元の信号について知っていることと使用目的が何であるかに応じて、さまざまなものが望ましい結果をもたらす可能性が最も高くなります。

"ホストOSからのサポート"出力がOSディスプレイ機能を介している場合、おそらく最も賢明です。画像に何が行われているかについての情報が最も多いからです。

実際に何をしようとしているのかを尋ねるには長い道のりだと思いますか?多くのグラフィックスライブラリは、何らかの形のアンチエイリアスを提供します。それらが適切かどうかは、達成しようとしているものに大きく依存します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top