`

2011.09.26(7)——— android Bitmap的截取及缩放

阅读更多
2011.09.26(7)——— android Bitmap的截取及缩放
参考:http://chroya.iteye.com/blog/710262

有一个任务 显示一张图片的中间地方的图片
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
参考:http://www.cnblogs.com/over140/archive/2010/09/19/1830703.html
上面那个虽然实现了 但是又重新生成了一张图片 内存开支有点大 我又找了找 可以用这个
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);  


这个方法可以得到自己固定宽和高后的图片 系统会自动缩放并返回


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics