android glide裁剪图片大小,Glide系列(二)------图片剪裁
一、簡介:
大家應該知道,我們在見面上顯示的ImageView的大小和從網絡取到的圖片的大小是不一樣的,最好的結果是網絡圖片剛好滿足我們ImageView的尺寸,然而實際上,網絡獲取的圖片或者從我們手機相冊獲取的圖片是很大的,一個比較高清的手機圖片一般在10多M,直接加載是一件很可怕的事情,所以,我們需要對圖片進行剪裁,一般需要ImageView的scaleType的屬性來調整圖片大小
二、常見的幾種剪裁方式的比較
scaleType
ImageView的scaleType的屬性有好幾種,分別是matrix(默認)、center、centerCrop、centerInside、fitCenter、fitEnd、fitStart、fitXY
1、android:scaleType=”center”
保持原圖的大小,顯示在ImageView的中心。當原圖的size大于ImageView的size,超過部分裁剪處理。
2、android:scaleType=”centerCrop”
以填滿整個ImageView為目的,將原圖的中心對準ImageView的中心,等比例放大原圖,直到填滿ImageView為止(指的是ImageView的寬和高都要填滿),原圖超過ImageView的部分作裁剪處理。
android:scaleType=”centerInside”
以原圖完全顯示為目的,將圖片的內容完整居中顯示,通過按比例縮小原圖的size寬(高)等于或小于ImageView的寬(高)。如果原圖的size本身就小于ImageView的size,則原圖的size不作任何處理,居中顯示在ImageView。
3、android:scaleType=”matrix”
不改變原圖的大小,從ImageView的左上角開始繪制原圖,原圖超過ImageView的部分作裁剪處理。
4、android:scaleType=”fitCenter”
把原圖按比例擴大或縮小到ImageView的ImageView的高度,居中顯示
5、android:scaleType=”fitEnd”
把原圖按比例擴大(縮小)到ImageView的高度,顯示在ImageView的右下部分位置
6、android:scaleType=”fitStart”
把原圖按比例擴大(縮小)到ImageView的高度,顯示在ImageView的左上部分位置
7、android:scaleType=”fitXY”
把原圖按照指定的大小在View中顯示,拉伸顯示圖片,不保持原比例,填滿ImageView.
效果圖:
這里寫圖片描述
總結:差異分析
Tip:很多人都覺得fitCenter和centerInside沒有區別,根據上面的效果圖來分析,其實是有區別的。fitCenter是將原圖等比例放大或縮小,使原圖的高度等于ImageView的高度,并居中顯示,而centerInside在原圖的原本size大于ImageView的size時,則縮小原圖,效果同fitCenter;在原圖的原本size小于ImageView的size時,則不進行任何size處理,居中顯示,效果同center。
adjustViewBounds屬性
ImageView的android:adjustViewBounds屬性為是否保持原圖的長寬比,單獨設置不起作用,需要配合maxWidth或maxHeight一起使用。
總結
以上是生活随笔為你收集整理的android glide裁剪图片大小,Glide系列(二)------图片剪裁的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android按钮在容器下方,使用fle
- 下一篇: android 判断http编码格式,安