Android 开发手机(三星)拍照应用照片旋转问题解决办法
发布时间 - 2026-01-11 00:54:23 点击率:次Android 开发手机(三星)拍照应用照片旋转问题解决办法

最近解决了一个令我头疼好久的问题,就是三星手机拍照图片旋转的问题,项目中有上传图片的功能,那么涉及到拍照,从相册中选择图片,别的手机都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;
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# Android
# 拍照照片旋转问题
# 照片旋转
# Android仿微信单击拍照长按录像功能实例代码
# Android实现拍照及图片显示效果
# Android获取本地相册图片和拍照获取图片的实现方法
# Android SurfaceView拍照录像实现方法
# Android 7.0中拍照和图片裁剪适配的问题详解
# Android调用系统拍照裁剪图片模糊的解决方法
# Android 拍照功能实现(手机关闭依然拍照)详解及实例代码
# 手机拍照
# 解决办法
# 你会
# 中有
# 希望能
# 只需要
# 很清楚
# 会把
# 令我
# 看一下
# 涉及到
# 谢谢大家
# 我找
# 可以根据
# 上传图片
# 解决了
# 可交换
# int
# java
# brush
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
三星网站视频制作教程下载,三星w23网页如何全屏?
JavaScript模板引擎Template.js使用详解
Laravel如何操作JSON类型的数据库字段?(Eloquent示例)
Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】
高端建站三要素:定制模板、企业官网与响应式设计优化
高防服务器如何保障网站安全无虞?
作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】
Python结构化数据采集_字段抽取解析【教程】
七夕网站制作视频,七夕大促活动怎么报名?
详解Android图表 MPAndroidChart折线图
如何在阿里云ECS服务器部署织梦CMS网站?
如何用已有域名快速搭建网站?
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
详解CentOS6.5 安装 MySQL5.1.71的方法
javascript事件捕获机制【深入分析IE和DOM中的事件模型】
深入理解Android中的xmlns:tools属性
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用
如何用PHP快速搭建CMS系统?
laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法
如何在不使用负向后查找的情况下匹配特定条件前的换行符
零服务器AI建站解决方案:快速部署与云端平台低成本实践
如何快速搭建高效香港服务器网站?
如何做网站制作流程,*游戏网站怎么搭建?
Laravel如何创建自定义中间件?(Middleware代码示例)
Laravel distinct去重查询_Laravel Eloquent去重方法
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
Laravel怎么导出Excel文件_Laravel Excel插件使用教程
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
网站制作软件有哪些,制图软件有哪些?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
Laravel如何实现文件上传和存储?(本地与S3配置)
Android实现代码画虚线边框背景效果
如何快速搭建自助建站会员专属系统?
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用
Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】
nodejs redis 发布订阅机制封装实现方法及实例代码
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
如何快速查询域名建站关键信息?
Python面向对象测试方法_mock解析【教程】
Python制作简易注册登录系统
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环
如何用PHP工具快速搭建高效网站?

