使用JAVA裁剪

使用JAVA裁剪/壓縮圖片

今天在做系統開發時涉及到了一些圖片的處理,包括頭像裁剪、縮略圖生成、原比例壓縮、限定最大寬度/高度縮放、指定比例(4:3/16:9)縮放,網上使用java處理圖片的文章很多,但是有些細節都不能滿足要求,最後集百家之長封裝了自己的工具類。

用到的技術主要是java自帶的ImageIO類的使用和google前幾年發佈的一個處理圖片的jar包(thumbnailator)。

在這裡簡單介紹下谷歌的圖片處理工具,源碼在github:https://github.com/coobird/thumbnailator,在maven上可以搜到,方便使用。

使用JAVA裁剪/壓縮圖片

github上有相關示例和api文檔,用起來很簡單,而且它的語法很簡潔,推薦使用,基本上我們日常對圖片的處理功能都有。

官網示例:

使用JAVA裁剪/壓縮圖片

另外也推薦查閱一下ImageIO的文檔,作為官方提供的圖片處理工具,功能還是很強大的,網上大部分工具類代碼的封裝都是基於ImageIO類做的,包括圖片加水印、圖片的各種縮放裁剪等。(自我感覺這個用起來稍微難了點,例如對圖片質量的設置,隱藏的就比較深,不花點時間還真不行)

下面是工具類的源代碼:

使用JAVA裁剪/壓縮圖片

因為貼代碼格式會比較亂,所以就傳圖片了,如果有需要源碼的可以留言。


分享到:


相關文章: