java压缩本地图片
时间: 2023-10-16 08:08:08 浏览: 112
详解Java实现批量压缩图片裁剪压缩多种尺寸缩略图一键批量上传图片
可以使用Java的ImageIO和BufferedImage类来压缩本地图片。具体步骤如下:
1. 读取本地图片到BufferedImage对象中
2. 创建一个新的BufferedImage对象,设置其宽度和高度为原图的一半
3. 将原图缩放到新图中
4. 使用ImageIO将新图保存到本地
以下是示例代码:
```java
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class ImageCompressor {
public static void main(String[] args) throws IOException {
// 读取本地图片到BufferedImage对象中
BufferedImage originalImage = ImageIO.read(new File("original.jpg"));
// 创建一个新的BufferedImage对象,设置其宽度和高度为原图的一半
int newWidth = originalImage.getWidth() / 2;
int newHeight = originalImage.getHeight() / 2;
BufferedImage newImage = new BufferedImage(newWidth, newHeight, originalImage.getType());
// 将原图缩放到新图中
newImage.createGraphics().drawImage(originalImage.getScaledInstance(newWidth, newHeight, java.awt.Image.SCALE_SMOOTH), 0, 0, null);
// 使用ImageIO将新图保存到本地
ImageIO.write(newImage, "jpg", new File("compressed.jpg"));
}
}
```
阅读全文