java 上传图片 缩略图
时间: 2023-09-03 18:11:00 浏览: 107
java 上传图片生成缩略图
5星 · 资源好评率100%
Java 上传图片并生成缩略图的步骤如下:
1. 获取上传的图片文件流。
2. 根据图片文件流,创建一个图片对象(BufferedImage)。
3. 创建一个指定大小的缩略图(BufferedImage)对象。
4. 使用Graphics2D对象的drawImage方法将原始图片绘制在缩略图上,并按照指定大小进行缩放。
5. 将缩略图保存到指定路径。
下面是一个示例代码:
```java
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class ImageUtil {
/**
* 生成缩略图
* @param srcImagePath 原始图片路径
* @param destImagePath 缩略图保存路径
* @param width 缩略图宽度
* @param height 缩略图高度
* @throws IOException
*/
public static void createThumbnail(String srcImagePath, String destImagePath, int width, int height) throws IOException {
// 读取原始图片
File srcFile = new File(srcImagePath);
BufferedImage srcImage = ImageIO.read(srcFile);
// 创建缩略图
BufferedImage thumbnail = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = thumbnail.createGraphics();
g2d.drawImage(srcImage, 0, 0, width, height, null);
// 保存缩略图
File destFile = new File(destImagePath);
ImageIO.write(thumbnail, "JPEG", destFile);
}
}
```
使用示例:
```java
public class Main {
public static void main(String[] args) throws IOException {
String srcImagePath = "D:/images/test.jpg";
String destImagePath = "D:/images/test_thumbnail.jpg";
int width = 100;
int height = 100;
ImageUtil.createThumbnail(srcImagePath, destImagePath, width, height);
}
}
```
上面的代码可以将原始图片缩放为指定大小的缩略图,并保存到指定路径。
阅读全文