グラデーションが 1 度の中心を中心にバッファリングされたイメージを回転させる最良の方法は何ですか?
私は AffineTransform があることを知っていますが、それはせん断と奇妙な伸び、または空白であるべき黒い斑点を引き起こします。
編集私が扱っている画像のサイズはアイコンサイズなので、通常は24x24から48x48ピクセルまでです
グラデーションが 1 度の中心を中心にバッファリングされたイメージを回転させる最良の方法は何ですか?
私は AffineTransform があることを知っていますが、それはせん断と奇妙な伸び、または空白であるべき黒い斑点を引き起こします。
編集私が扱っている画像のサイズはアイコンサイズなので、通常は24x24から48x48ピクセルまでです
このような小さな角度の回転の品質は、画像のサイズによって大きく異なります。あなたのイメージの大きさは?
[OPが質問を編集して画像のサイズを示した後]
IMO画像は小さすぎて、90度の倍数以外の意味のある回転にはなりません(正方形であると仮定)。可能な限り最高の品質を得るには、グラフィック デザイナーが手動で行う必要があります。
【別案】
画像の高解像度バージョンを保持します。すべての変換をこの画像に適用し、縮小してアイコンを取得します。
グラフィック コンテキストのアンチエイリアシングを設定してみましたか?
g2d.setRenderingHint(
RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON
);
アイコンに変換を適用する際の進め方を説明するリンクがいくつかあります。
Java 2D トリック: アンチエイリアス処理された画像変換 http://weblogs.java.net/blog/campbell/archive/2007/03/java_2d_tricker_1.html
BufferedImage の Raster または DataBuffer のサブピクセル サンプリング。 http://forums.java.net/jive/thread.jspa?messageID=204921&tstart=0