這篇文章是承接上一篇文章的,如果您還沒有看過,建議您點擊查看。因為這個系列文章圖片較多,而且篇幅較長,為了方便閱讀,特意分開寫了。這篇文章主題仍然是android UI相關,主要介紹android怎么優雅的操作圖片,來拉升app顏值。本文主要會介紹幾個實現強大酷炫功能的自定義ImageView,還會介紹幾個圖片濾鏡/裁剪/壓縮的庫。所以這里不是純UI相關,而是圖片處理全家桶 _!,從產生原始圖片(本文介紹了優雅截屏的開源庫),到壓縮圖片(本文介紹了兩種高效的圖片壓縮庫),再到添加濾鏡效果(本文介紹了兩個提供多種濾鏡效果的庫),最后將圖片加載到酷炫的ImageView上(介紹了兩個自定義酷炫ImageView庫)的全過程本文均有對應的介紹。這個系列的文章主要是整理我收集的酷炫常用的開源庫,主要是酷炫自定義View庫和一些酷炫功能庫,所有的文章都匯總在這個Github庫里,歡迎點擊查看,如果覺得有用,歡迎star。
如果大家有好的UI相關開源項目推薦,歡迎在Github提issue或者發起PR,我會認真審核后合并;也歡迎在我的博客評論推薦。
最后,點擊查看Github上的本項目
TODO 1.添加圖片毛玻璃效果介紹;2.添加剪裁庫介紹;3.添加圖片輪播效果介紹;4.添加仿微信圖片選擇介紹;5.添加仿微博加載超長大圖介紹;6.添加加載動態圖介紹。如果篇幅過長,分成上下篇
聲明:因為圖片加載庫imageloader,Picasso,Fresco,glide使用十分普遍,這里就沒有再添加,如果對圖片加載庫還不是很了解,可以點擊鏈接去github查看
CircleImageView
一個非常漂亮的圓形ImageView,保持了ImageView的所有特性,可以像原生ImageView一樣直接用Picasso加載圖片展示。
項目地址:https://github.com/hdodenhof/CircleImageView
效果圖:
PhotoView
一個支持縮放功能的ImageView,通過多點觸控或者雙擊都可以實現縮放效果。
項目地址:https://github.com/chrisbanes/PhotoView
效果圖:
rebound
Facebook出品,必屬精品。這個庫不是一個控件庫,而是一個功能庫,實現了點擊圖片,像按壓彈簧一樣的效果;點擊圖片之后,圖片會先縮小,再放大,效果非常絢麗漂亮。
項目地址:http://facebook.github.io/rebound/
效果圖:
InstaCapture
這個庫嚴格說起來和圖片關系不大,這是一個強大的通過一行代碼實現截屏的功能的庫,而且可以指定當前activity截屏不包含哪些具體view組件,而且可以和當下流行的RXJava結合使用,非常簡單易用,截屏之后的文件怎么處理就隨便了,通常截屏文件我們還是要加載成位圖顯示的,所以先放在圖片這里。
項目地址:https://github.com/tarek360/InstaCapture
效果圖:
PicassoFaceDetectionTransformation
這是一個和Picasso配合使用的圖片剪裁庫,特點就是自帶面部識別,會把臉部剪裁到中間。
項目地址:https://github.com/aryarohit07/PicassoFaceDetectionTransformation
效果圖:
原圖:

兩種剪裁效果:左邊的是居中剪裁,右邊的是面部居中剪裁

Luban
這又是一個功能庫,實現高效率的無損圖片壓縮功能,作者對比了使用該庫壓縮和使用微信壓縮的壓縮比例,發現壓縮效果和微信差不多!這是相當逆天的效果!有了這個庫,其它的壓縮庫基本可以放一邊了!而且作者新增加了時下火熱的RXJava調用方式,簡直完美!
項目地址:https://github.com/Curzibn/Luban
效果圖:和微信壓縮效果對比
內容 | 原圖 | Luban | |
---|---|---|---|
截屏 720P | 720*1280,390k | 720*1280,87k | 720*1280,56k |
截屏 1080P | 1080*1920,2.21M | 1080*1920,104k | 1080*1920,112k |
拍照 13M(4:3) | 3096*4128,3.12M | 1548*2064,141k | 1548*2064,147k |
拍照 9.6M(16:9) | 4128*2322,4.64M | 1032*581,97k | 1032*581,74k |
滾動截屏 | 1080*6433,1.56M | 1080*6433,351k | 1080*6433,482k |
Compressor
又一個無損圖片壓縮處理庫,這個庫可能沒有上面那個庫厲害,但是這個庫可以和RXJava配合使用,實現處理鏈式化,所以如果是RXJava深度用戶的話,可以去看看。
項目地址:https://github.com/zetbaitsu/Compressor
AndroidPhotoFilters
這叒是一個功能庫,實現了靈活多樣的濾鏡效果,相當漂亮。
效果圖:

MagicCamera
一個包含美顏等40余種實時濾鏡的相機庫,實現的是一個完整的照相機功能,可進行拍照、錄像和圖片修改。個人來說不喜歡這種雜合功能較多的庫,我一向認為越小越精致,所以我一般不會使用這種庫。但是可以學習里面的功能。
項目地址:https://github.com/wuhaoyu1990/MagicCamera
效果圖:


這次先介紹這么多,這個項目我會持續更新,歡迎在我的Github watch/star。最后歡迎大家討論,如果覺得不錯,隨手點個喜歡,或者去我的Github點個star,我可能會開心好幾天 Y(_)Y,謝謝大家!
如果喜歡這個系列的文章,歡迎閱讀下一篇--
還在羨慕微信/微博的圖片處理?-android酷炫圖片處理(下)