android camera 照片旋转,从android:hardware:camera api获取Pic后,为什么图片会旋转?...

try {

File f = new File(imagePath);

ExifInterface exif = new ExifInterface(f.getPath());

int orientation = exif.getAttributeInt(

ExifInterface.TAG_ORIENTATION,

ExifInterface.ORIENTATION_NORMAL);

int angle = 0;

if (orientation == ExifInterface.ORIENTATION_ROTATE_90) {

angle = 90;

} else if (orientation == ExifInterface.ORIENTATION_ROTATE_180) {

angle = 180;

} else if (orientation == ExifInterface.ORIENTATION_ROTATE_270) {

angle = 270;

}

Matrix mat = new Matrix();

mat.postRotate(angle);

BitmapFactory.Options options = new BitmapFactory.Options();

options.inSampleSize = 2;

Bitmap bmp = BitmapFactory.decodeStream(new FileInputStream(f),

null, options);

bitmap = Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(),

bmp.getHeight(), mat, true);

ByteArrayOutputStream outstudentstreamOutputStream = new ByteArrayOutputStream();

bitmap.compress(Bitmap.CompressFormat.PNG, 100,

outstudentstreamOutputStream);

imageView.setImageBitmap(bitmap);

} catch (IOException e) {

Log.w("TAG", "-- Error in setting image");

} catch (OutOfMemoryError oom) {

Log.w("TAG", "-- OOM Error in setting image");

}

从相机捕获图像后旋转尝试此操作.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值