BitmapFactory.decodeByteArray如何使用
BitmapFactory.decodeByteArray如何使用
看不懂就多看几遍 发表于1年前
BitmapFactory.decodeByteArray如何使用
  • 发表于 1年前
  • 阅读 15
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

decodeByteArray返回null

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

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

 

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());

 

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

共有 人打赏支持
粉丝 8
博文 74
码字总数 9299
×
看不懂就多看几遍
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: