java IO 实现图片压缩
以下是Java IO实现图片压缩的示例代码:
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class ImageCompressor {
/**
* 压缩图片并保存到指定路径
* @param srcPath 源图片路径
* @param destPath 目标图片路径
* @param quality 压缩质量(0.0-1.0)
* @throws IOException
*/
public static void compress(String srcPath, String destPath, float quality) throws IOException {
File srcFile = new File(srcPath);
BufferedImage srcImage = ImageIO.read(srcFile);
Image destImage = srcImage.getScaledInstance(srcImage.getWidth(), srcImage.getHeight(), Image.SCALE_SMOOTH);
BufferedImage destBufferedImage = new BufferedImage(srcImage.getWidth(), srcImage.getHeight(), BufferedImage.TYPE_INT_RGB);
destBufferedImage.getGraphics().drawImage(destImage, 0, 0, null);
ImageIO.write(destBufferedImage, "JPEG", new File(destPath));
}
public static void main(String[] args) throws IOException {
String srcPath = "test.jpg";
String destPath = "test_compressed.jpg";
float quality = 0.5f;
compress(srcPath, destPath, quality);
}
}
该示例代码通过Java IO读取源图片,使用Java AWT对图片进行压缩,并使用Java IO将压缩后的图片保存到指定路径。其中,压缩质量通过参数传入,可以根据实际需求进行调整。
原文地址: https://www.cveoy.top/t/topic/bRxC 著作权归作者所有。请勿转载和采集!