BitmapFactory.decodeByteArray如何使用

decodeByteArray返回null

2016-08-01 10:15 29人阅读 评论(0) 收藏 编辑 删除html

在作 自定义相机 截取图像 的时候,调用 系统函数 都会有 byte[] data 参数,通常 第一时间 会想到使用 BitmapFactory.decodeByteArray 函数,但是当 使用的时候,发现 获得的 Bitmap 对象是 null,因此 这个函数 不能 直接使用,使用方法以下:android

 

Size previewSize = camera.getParameters().getPreviewSize();
YuvImage yuvimage=new YuvImage(nv21, ImageFormat.NV21, previewSize.width, previewSize.height, null);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
yuvimage.compressToJpeg(new Rect(0, 0, previewSize.width, previewSize.height), 80, baos);  //这里 80 是图片质量,取值范围 0-100,100为品质最高
byte[] jdata = baos.toByteArray();//这时候 bmp 就不为 null 了
Bitmap bmp = BitmapFactory.decodeByteArray(jdata, 0, jdata.length);
Log.i(TAG, "track21------>bmp.width== "+bmp.getWidth() +" bmp.height=="+bmp.getHeight());vim

 

http://www.th7.cn/Program/Android/201511/694685.shtml函数

相关文章
相关标签/搜索