Android圖片縮放,壓縮總結(inSampleSize,Matrix比較)

Android中經常會遇到需要對圖片進行縮放及壓縮的操作,下面列出3種圖片縮放方法:

一.圖片縮放

1.inSampleSize(采樣率)

優點:效率較高,解析速度快

缺點:采樣率inSampleSize的取值隻能是2的次方數(例如:inSampleSize=15,實際取值為8;inSampleSize=17,實際取值為16;實際取值會往2的次方結算),因此該方法不能精確的指定圖片的大小

2.Matrix

優點:可以精確地指定圖片的縮放大小

缺點:是在原bitmap的基礎之上生成的,占內存,效率低.

3.ThumbnailUtils

2.2新加的類,實際上是將上述兩種方法進行結合並做瞭封裝.

二.圖片壓縮

往往圖片壓縮是為瞭節省網絡流量,進行網絡傳輸,一般需要將圖片壓縮成byte[] 數組.

	public static byte[] BitmapToByte(Bitmap bitmap) {
		ByteArrayOutputStream baos = new ByteArrayOutputStream();
		bitmap.compress(CompressFormat.PNG, 80, baos);//其中80參數表示要壓縮的比例
		return baos.toByteArray();
	}

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *