画像のサイズをさまざまな小さいサイズ (サムネイル大/小など) に変更する簡単な小さな Java クラスを作成しています。RenderingHints を含む例を見てきました。出力ファイルは、ない場合よりも大幅に大きくなります。
私の質問は: サイズ変更されている画像にテキストがない場合、RenderingHints を使用する必要がありますか?
int IMG_WIDTH = 100;
int IMG_HEIGHT = 100;
BufferedImage resizedImage = new BufferedImage(IMG_WIDTH, IMG_HEIGHT, type);
Graphics2D g = resizedImage.createGraphics();
g.drawImage(originalImage, 0, 0, IMG_WIDTH, IMG_HEIGHT, null);
g.dispose();
g.setComposite(AlphaComposite.Src);
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
45kb の画像から始めました。出力の違いは、3kb ファイル (RenderingHints なし) と 24kb ファイル (RenderingHints あり) です。