博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
三星手机拍照,从图库选择照片旋转问题完美解决
阅读量:6859 次
发布时间:2019-06-26

本文共 1477 字,大约阅读时间需要 4 分钟。

  最近解决了一个令我头疼好久的问题,就是三星手机拍照图片旋转的问题,项目中有上传图片的功能,那么涉及到拍照,从相册中选择图片,别的手机都ok没有问题,唯独三星的手机拍照之后,你会很清楚的看到会把照片旋转一下,然后你根据路径找到的图片就是已经被旋转的了,解决办法终于被我找到了。我们可以根据图片的路径读取照片exif(Exchangeable Image File 可交换图像文件)信息中的旋转角度

根据调试,可以清楚的发现三星手机拍照的图片的旋转角度是90度,而别的手机旋转角度是0度

看一下代码:

/**      * 读取照片exif信息中的旋转角度      * @param path 照片路径      * @return角度      */      public static int readPictureDegree(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 (IOException e) {              e.printStackTrace();          }          return degree;      }  

那么我们只需要根据旋转角度将图片旋转过来就OK了

public static Bitmap toturn(Bitmap img){          Matrix matrix = new Matrix();          matrix.postRotate(+90); /*翻转90度*/          int width = img.getWidth();          int height =img.getHeight();          img = Bitmap.createBitmap(img, 0, 0, width, height, matrix, true);          return img;  } 

  

转载地址:http://cwxyl.baihongyu.com/

你可能感兴趣的文章
2014年java软件project师面试题收集
查看>>
Java并发编程:Callable、Future和FutureTask
查看>>
这些老外的开源技术养活了很多国产软件
查看>>
svn简单介绍
查看>>
hbase region still in transition
查看>>
CSS Flex布局属性整理
查看>>
【struts2】中method={1}具体解释
查看>>
Android Studio 函数使用方法提示 快捷键
查看>>
构建自己的PHP框架--构建模版引擎(2)
查看>>
vue28-2.0-过滤器
查看>>
Cocos2d-x 多点触摸
查看>>
MySql按周/月/日分组统计数据的方法
查看>>
自定义控件_VIewPager显示多个Item
查看>>
2015年年尾总结
查看>>
UI组件之AdapterView及其子类(五)ListView组件和ListActivity
查看>>
Linux编程之select
查看>>
数据库表设计--备份记录的表设计优化
查看>>
小谈业务应用架构
查看>>
JWPlayer Uncaught Error: Invalid SRT file
查看>>
mysql使用GROUP BY分组实现取前N条记录的方法
查看>>