私はこの質問がかなり古いことを知っていますが、新しいソフトウェアが出てくると、人々にとって興味深いかもしれないプロジェクトへの新しいリンクを取得するのに役立ちます。
imgscalrを使用する痛いほど単純で純粋なJavaの画像(等、及びパディングのような単純なOPS、クロッピング、明るく、回転/調光)リサイズライブラリである-単一のクラスは、すべてのように定義された単純なグラフィックス操作のセットで構成静的メソッドその画像を渡して結果を返します。
ライブラリを使用する最も基本的な例は次のようになります。
BufferedImage thumbnail = Scalr.resize(image, 150);
そして、いくつかの高品質の微調整などを使用して画像のサムネイルを生成するより一般的な使用法は、次のようになります。
import static org.imgscalr.Scalr.*;
public static BufferedImage createThumbnail(BufferedImage img) {
// Create quickly, then smooth and brighten it.
img = resize(img, Method.SPEED, 125, OP_ANTIALIAS, OP_BRIGHTER);
// Let's add a little border before we return result.
return pad(img, 4);
}
すべての画像処理操作は、生のJava2Dパイプライン(主要プラットフォームでハードウェアアクセラレーションされたもの)を使用し、コードでのライブラリ競合などのJNIを介した呼び出しの苦痛をもたらしません。
imgscalrは、かなりの数の場所で大規模なプロダクションにも展開されています。AsyncScalrクラスを含めると、サーバー側の画像処理に最適なドロップインになります。
最高のULTRA_QUALITYモードで速度と品質のトレードオフに使用できる画像品質の調整が多数あり、GIMPのLancoz3実装よりも見栄えの良いスケーリングされた結果を提供します。