Android中Bit地图常见操作(一.理论)

Android中Bitmap常见操作(一.理论)

//利用BitmapFactory生成Bitmap
//注意该方法只是生成了Bitmap,所以返回值都是一个Bitmap
//并没有涉及到对于Bitmap对象的操作,比如将其旋转,压缩
//以下为常用的四种方式:
//1 依据文件路径生成Bitmap
//该方法也是获取缩略图的方法之一
//获取缩略图的另外一种方法是直接调用类方法
//重点是传入参数opts
//ThumbnailUtils.extractThumbnail();
//可以这么理解:既然是得到缩率图,其实也就是生成一个
//新的Bitmap,所以当然该调用BitmapFactory.decodeFile()方法.
Bitmap bitmap1=BitmapFactory.decodeFile(pathName, opts);
//2 从本地资源中生成Bitmap
Bitmap bitmap2=BitmapFactory.decodeResource(res, id);
//3 从输入流中生成Bitmap
Bitmap bitmap3=BitmapFactory.decodeStream(inputStream);
//4 从字节数组中生成Bitmap
Bitmap bitmap4=BitmapFactory.decodeByteArray(data, offset, length);

//生成Bitmap后对于该Bitmap的操作小结如下:
//1 压缩Bitmap的宽和高,将Bitmap旋转和倾斜
//  等操作调用的都是类方法Bitmap.createBitmap()方法.其中matrix参数很重要
Bitmap bitmap5=Bitmap.createBitmap(rawBitmap, x, y, width, height, matrix, filter);
//2 保存Bitmap到文件.调用的是Bitmap的对象方法
bitmap5.compress(format, quality, os);