multipartfile thumbnails压缩图片
时间: 2023-11-03 17:01:38 浏览: 125
您可以使用Java的MultipartFile类和Java ImageIO库来压缩图片生成缩略图。下面是一个示例代码:
```java
import org.springframework.web.multipart.MultipartFile;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ThumbnailGenerator {
public static void generateThumbnail(MultipartFile file, String destinationPath, int width, int height) throws IOException {
BufferedImage originalImage = ImageIO.read(file.getInputStream());
BufferedImage thumbnail = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics2D = thumbnail.createGraphics();
graphics2D.drawImage(originalImage.getScaledInstance(width, height, Image.SCALE_SMOOTH), 0, 0, null);
graphics2D.dispose();
String fileExtension = getFileExtension(file.getOriginalFilename());
File destinationFile = new File(destinationPath);
ImageIO.write(thumbnail, fileExtension, destinationFile);
}
private static String getFileExtension(String filename) {
return filename.substring(filename.lastIndexOf(".") + 1);
}
}
```
该代码将读取MultipartFile中的原始图像,生成指定宽度和高度的缩略图,并将其保存到指定的目标路径中。您可以根据需要调整生成的缩略图的大小。
请注意,这只是一个基本示例,您可能需要根据自己的项目需求进行调整。
阅读全文
相关推荐












