Javaではスケールなしで(画像の高さと幅の変更なしで)1枚のJPEG画像サイズを縮小したいと考えています。このサイトでは解決策を見つけることができませんでした。JPEGによる画像のサイズを縮尺なしで縮小します。
1 ImageIOに使用:私が試したもので、以下のソリューション1について
BufferedImage image = ImageIO.read(inputFile);
ImageWriter writer = null;
Iterator iter = ImageIO.getImageWritersByFormatName("jpg");
if(iter.hasNext()){
writer = (ImageWriter) iter.next();
}
ImageOutputStream ios = ImageIO.createImageOutputStream(outputFile);
writer.setOutput(ios);
ImageWriteParam iwParam = writer.getDefaultWriteParam();
iwParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
iwParam.setCompressionQuality(compressionQuality);
writer.write(null, new IIOImage(image, null, null), iwParam);
を、私がjpgためたcompressionQualityを設定するが、私はorigina画像compressQualityとNEWIMAGEを得ることができない私は時々もらうよりも大きいですオリジナル。
お返事をありがとう.. MODE_EXPLICTが...設定しなければならないけれども、ImageIOでを使用してサイズをguarteenていないあなたが言ったように、低減することができ、オリジナルの品質を検出することができない...私は別の方法を使用jai(http://www.coderanch.com/t/383601/java/java/decrease-size-jpeg-image-file)そしてそれは動作します.. –