2

私の要件は、「スイングを使用して品質を落とさずに画像のサイズを変更する方法」です。

サイズ変更コンポーネント、ラベル、パネルを使用しています。現時点では、サイズ変更の概念を使用していますが、画像がぼやけて品質が低下しています。「スイングコンセプトを使用して品質を落とさずに画像のサイズを変更する方法」を知っている人はいますか? 関連情報またはコードを送ってください。

ありがとう、ガネーシュクマール。

4

2 に答える 2

5

ガネーシャ、

imgscalrをご覧ください。これは非常に単純で(単一のクラス、使用する静的メソッドの束)、次のように使用できます。

BufferedImage thumbnail = Scalr.resize(srcImage, 150);

最高品質のスケーリングされた結果を保証するために、次のようにサイズ変更メソッドに追加の引数を渡すことができます。

BufferedImage thumbnail = resize(img, Method.ULTRA_QUALITY, 125, OP_ANTIALIAS);

同様に使用できる多数の単純な画像操作(トリミング、パディング、回転など)もあります。たとえば、サーバーで画像処理を行う場合は、一度に多くの操作をキューに入れ、構成可能な数のスレッドでそれらを実行できる非同期クラスもあります。

ライブラリは純粋なJavaで記述されており、Apache 2ライセンスの下でリリースされています。興味がある場合は、ここですべてのソースコードを見つけることができます。

他の例やユースケースに興味がある場合は、それに関連する他のいくつかのSOの質問があります。

于 2012-08-21T17:01:48.713 に答える
2

あなたが求めていることは不可能です。new resolution > native resolution定義上不可逆であるラスターイメージのスケーリング。万が一、誤解された場合は、あらかじめお詫び申し上げます。

于 2012-08-21T16:57:29.510 に答える