拍照后旋转图片
来源:互联网 发布:淘宝客服怎么设置售前 编辑:程序博客网 时间:2024/05/17 06:06
笔者在开发中有遇到过这样的问题,就是在三星 note4手机上拍照,发现图片是自动旋转90度的,导致最后上传的图片是旋转的,为了解决这个问题,我们就需要先获取图片的旋转度信息,然后再将图片按照一定的角度旋转过来,最后上传以达到我们想要的效果
获取图片的旋转度
/** * 获取图片的旋转度 * * @param path 图片的路径 * @return 返回图片的旋转度 */ public static int getBitmapDegree(String path) { int degree = 0; try { ExifInterface exifInterface = new ExifInterface(path); int orientation = exifInterface.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_NORMAL); switch (orientation) { case ExifInterface.ORIENTATION_ROTATE_90: degree = 90; break; case ExifInterface.ORIENTATION_ROTATE_180: degree = 180; break; case ExifInterface.ORIENTATION_ROTATE_270: degree = 270; break; } } catch (Exception ex) { ex.printStackTrace(); } return degree; }
将图片旋转一定的角度后返回
/** * 将图片旋转一定的角度 * * @param bm 需要旋转的图片 * @param degree 图片旋转的角度 * @return 旋转后的图片 */ public static Bitmap rotateBitmapByDegree(Bitmap bm, int degree) { Bitmap returnBm = null; //根据旋转角度生成对应的旋转矩阵 Matrix matrix = new Matrix(); matrix.postRotate(degree); try { returnBm = Bitmap.createBitmap(bm, 0, 0, bm.getWidth(), bm.getHeight(), matrix, true); } catch (Exception ex) { ex.printStackTrace(); } if (returnBm == null) { returnBm = bm; } if (bm != returnBm) { bm.recycle(); } return null; }
0 0
- 拍照后旋转图片
- 解决三星手机拍照后,图片旋转。
- Android拍照后图片旋转问题
- 处理相机拍照后Bitmap和图片旋转问题
- 使用相机拍照获取图片后 有时候图像显示旋转
- Android拍照后获得的图片旋转90度问题
- android手机拍照后上传图片被旋转的问题
- Android 拍照后图片的旋转,合并,兼容性 相机开发
- 拍照和图片旋转
- 拍照和图片旋转
- 拍照,图片旋转
- 拍照图片旋转问题
- android拍照后图片路径的获取(解决不同手机存在拍照后旋转的问题)
- Android开发拍照图片旋转
- android 拍照图片旋转问题
- android 拍照图片旋转问题
- 旋转手机拍照的图片
- 图片 拍照 旋转 存储等
- unity3d深入学习笔记2:项目数据路径
- 单链表逆序
- Android Material Design 之 TabLayout学习
- spring的事务管理实现
- oracle重建索引
- 拍照后旋转图片
- C++简单实现对象引用计数示例
- linux下使用yum安装mysql5.1详解
- C++ STL 中 remove 和 erase 的区别 http://www.xuebuyuan.com/1422428.html
- 重定向和转发引出的URL路径问题
- ALM11 安装步骤
- unity3d深入学习笔记3:项目生命周期
- 【有画快说】完美收官,转发赢壕礼
- 廖雪峰教程笔记补遗