引入jar依赖
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
直入主题-工具类
package com.vue.img;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import net.coobird.thumbnailator.Thumbnails;
import net.coobird.thumbnailator.geometry.Positions;
/**
*
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
谷歌图片压缩
*/
public class GoogleCompressImg {
private static final String basepath="D:\\picture\\pics";
public static void main(String[] args) {
File[] files=getFileList(basepath);
for (File file : files) {
System.out.println(file.getAbsolutePath());
googleCompress(file.getAbsolutePath(), "D:\\picture\\"+file.getName()+"_test"+file.getName().substring(file.getName().indexOf(".")));
}
}
public static void googleCompress(String olderImg,String newImg){
try {
/**
* scale图片长宽 outputQuality图片质量
*/
/**
* 指定大小
*/
/**
* keepAspectRatio(false)按比例
*/
/**
* rotate(角度),正数:顺时针 负数:逆时针
*/
/**
* watermark(位置,水印图,透明度)
*/
Thumbnails.of(olderImg).size(1280, 1024).watermark(Positions.CENTER, ImageIO.read(new File(olderImg)), 0.5f).outputQuality(0.8f).toFile(newImg);
/**
* 裁剪
*/
/**
* 转换图像格式
*/
} catch (IOException e) {
e.printStackTrace();
}
}
public static File[] getFileList(String path){
File file=new File(path);
File[] filelist=null;
if(file.exists()){
filelist=file.listFiles();
}
return filelist;
}
}