一、引入thumbnailator
- maven:
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
- gradle:
implementation 'net.coobird:thumbnailator:0.4.8'
二、单元测试代码
public class ThumnailTEst {
@Test
public void test1() throws Exception {
ByteArrayOutputStream out = new ByteArrayOutputStream();
URL url = Thread.currentThread().getContextClassLoader()
.getResource("cage1.jpeg");
//压缩后转向到内存中
Thumbnails
.of(url)//可以是文件名或输入流
.size(100, 100)
.rotate(90)//转90度
.keepAspectRatio(true)//保持比例(默认)
.toOutputStream(out);
//将压缩后的图片变成Base64
String s=Base64.getEncoder().encodeToString(out.toByteArray());
System.out.println(s);
}
}
网友评论