使用Thumbnailator類庫等比例生成縮略圖

最近項目需要在本地存儲圖片的同時生成縮略圖,使用了Spring提供的Thumbnailator類庫。

添加maven依賴

  <dependency>
       <groupId>net.coobird</groupId>
       <artifactId>thumbnailator</artifactId>
       <version>0.4.7</version>
       <scope>compile</scope>
   </dependency>

按照指定比例壓縮原圖

原圖片傳參的形式爲MultipartFile file,對應的輸入流爲file.getInputStream(),生成縮略圖即是獲取原圖指定壓縮比例後的輸入流,然後進行相關的操作

InputStream inputStream = file.getInputStream();
//0.1f指定比例壓縮圖片(壓縮比例自己調節0~1之間均可)
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
Thumbnails.of(inputStream).scale(0.1f).toOutputStream(byteArrayOutputStream);
//現在獲取到的是縮略圖的輸入流
inputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章