使用Thumbnailator生成缩略图(简易)

引入依赖

<!-- https://mvnrepository.com/artifact/net.coobird/thumbnailator -->
<dependency>
    <groupId>net.coobird</groupId>
    <artifactId>thumbnailator</artifactId>
    <version>0.4.8</version>
</dependency>

1.使用Thumbnailator生成简易缩略图

import java.io.File;
import java.io.IOException;
import net.coobird.thumbnailator.Thumbnails;

public class ThumbnailatorTest {
    public static void main(String[] args) throws IOException {
        File originalImg = new File("C:/我们一起学猫叫.jpg");   //直接复制过来的路径是C:\\我们一起学猫叫.jpg,\\与/是的等价的
        File thumbnailImg = new File("C:/我们一起学猫叫缩略图.jpg");
        Thumbnails.of(originalImg)
                .size(100, 100)    //设置缩略后图片大小
                .outputQuality(0.5f)    //设置缩略后图片的质量
                .toFile(thumbnailImg);
    }
}
缩略前我们一起学猫叫.jpg
插入后我们一起学猫叫缩略图.jpg

2.使用缩略加水印

网上直接找了个水印watermark.png
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import net.coobird.thumbnailator.Thumbnails;
import net.coobird.thumbnailator.geometry.Positions;

public class ThumbnailatorTest {
    public static void main(String[] args) throws IOException {
        File originalImg = new File("C:/我们一起学猫叫.jpg");
        File thumbnailImg = new File("C:/我们一起学猫叫缩略图.jpg");
        Thumbnails.of(originalImg).
        size(200, 200)
        .outputQuality(0.5f) 
                 //三个参数分别是印水印的位置,水印图片存放位置以及水印透明度
        .watermark(Positions.BOTTOM_RIGHT, ImageIO.read(new File("C:/watermark.png")), 0.5f)
        .toFile(thumbnailImg);
    }
}
缩略前我们一起学猫叫.jpg
缩略后我们一起学猫叫缩略图.jpg

猜你喜欢

转载自blog.csdn.net/dh554112075/article/details/82560097