2011.09.26(7)——— android Bitmap的截取及缩放
参考:[url]http://chroya.iteye.com/blog/710262[/url]
有一个任务 显示一张图片的中间地方的图片
1、
什么也不用设 只要固定了imageView的宽和高 就会自动缩放来填充这个imageview
2、截取
一张大图 我要截取其中的部分
例如
从bitmap对象b的(100,20)开始截取宽为200,高为300的部分图像
3、ScaleType
参考:[url]http://www.cnblogs.com/over140/archive/2010/09/19/1830703.html[/url]
上面那个虽然实现了 但是又重新生成了一张图片 内存开支有点大 我又找了找 可以用这个
android:scaleType 参数如下
4、得到缩放后的图片
这个方法可以得到自己固定宽和高后的图片 系统会自动缩放并返回
参考:[url]http://chroya.iteye.com/blog/710262[/url]
有一个任务 显示一张图片的中间地方的图片
1、
什么也不用设 只要固定了imageView的宽和高 就会自动缩放来填充这个imageview
2、截取
一张大图 我要截取其中的部分
Bitmap.createBitmap(Bitmap source, int x, int y, int width, int height)
例如
Bitmap bitmap = Bitmap.createBitmap(b, 100, 20, 200, 300);
从bitmap对象b的(100,20)开始截取宽为200,高为300的部分图像
3、ScaleType
参考:[url]http://www.cnblogs.com/over140/archive/2010/09/19/1830703.html[/url]
上面那个虽然实现了 但是又重新生成了一张图片 内存开支有点大 我又找了找 可以用这个
iv.setScaleType(ImageView.ScaleType.CENTER);
android:scaleType 参数如下
matrix
用矩阵来绘图
fitXY
拉伸图片(不按比例)以填充View的宽高
fitStart
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的左边
fitCenter
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的中间
fitEnd
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的右边
center
按原图大小显示图片,但图片宽高大于View的宽高时,截图图片中间部分显示
centerCrop
按比例放大原图直至等于某边View的宽高显示。
centerInside
当原图宽高小于或等于View的宽高时,按原图大小居中显示;反之将原图缩放至View的宽高居中显示。
4、得到缩放后的图片
Bitmap mBitmap = Bitmap.createScaledBitmap(bmp, mScreenWidth, mScreenHeight, true);
这个方法可以得到自己固定宽和高后的图片 系统会自动缩放并返回