JAVA图片压缩
前言
在项目开发中遇到一个要求:如果图片大于1M就将图片进行压缩,在此记录下
一、Thumbnails是什么?
thumbnailator是谷歌处理图片的开源工具类,可以对图片进行缩放,旋转,压缩,剪裁,添加水印,转换格式等;
api:
http://coobird.github.io/thumbnailator/javadoc/0.4.8/net/coobird/thumbnailator/package-summary.html
二、使用步骤
1.导入Thumbnails依赖
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
2.代码
public void test(String base64){
String str=base64.toString().substring(22);//去除base64前面的data:image/png;base64,(有逗号)
Integer equalIndex= str.indexOf("=");//1.找到等号,把等号也去掉
if(str.indexOf("=")>0) {
str=str.substring(0, equalIndex);
}
Integer strLength=str.length();
Integer size=(strLength-(strLength/8)*2);//计算后得到的文件流大小,单位为字节
BigDecimal filesize = new BigDecimal(size);
BigDecimal megabyte = new BigDecimal