php识别翻转iphone拍摄的颠倒图片


Posted in PHP onMay 17, 2018

用iphone横向拍摄并上传的图片往往是向左或向右90度侧向显示的,本文介绍如何用php识别并且翻转图片到正确位置。

ps : 此方法只能判断一些手机相机拍摄的图片位置颠倒 

代码:

// 首先用这个函数读取图片的一些头信息
// 原理就是在头信息中取出图片的位置信息 并且根据位置信息对图片做出调整
// 此函数只能处理jpeg 与 tiff 的图片格式
$exif = exif_read_data ($url,0,true);
 
if(isset($exif['IFD0']['Orientation'])){
 $source = imagecreatefromjpeg($url);//读取图片流
 
 //判断角度翻转
 switch($exif['IFD0']['Orientation']) {
  case 8:
   $image = imagerotate($source, 90, 0);
   break;
  case 3:
   $image = imagerotate($source, 180, 0);
   break;
  case 6:
   $image = imagerotate($source, -90, 0);
   break;
  }
 
 //保存到本地
 imagejpeg($image,'../storage/tmp.jpeg');
 
 //释放内存
 imagedestroy($image);
     
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP操作文件方法问答
Mar 16 PHP
实用函数2
Nov 08 PHP
PHP伪静态写法附代码
Jun 20 PHP
php面向对象全攻略 (十六) 对象的串行化
Sep 30 PHP
php获取ip的三个属性区别介绍(HTTP_X_FORWARDED_FOR,HTTP_VIA,REMOTE_ADDR)
Sep 23 PHP
浅谈php中mysql与mysqli的区别分析
Jun 10 PHP
PHP set_error_handler()函数使用详解(示例)
Nov 12 PHP
PHP队列用法实例
Nov 05 PHP
PHP解密Unicode及Escape加密字符串
May 17 PHP
总结PHP中DateTime的常用方法
Aug 11 PHP
iOS自定义提示弹出框实现类似UIAlertView的效果
Nov 16 PHP
PHP中Laravel 关联查询返回错误id的解决方法
Apr 01 PHP
php通过各种函数判断0和空
Jul 04 #PHP
PHP手机短信验证码实现流程详解
May 17 #PHP
PHP实现多图上传和单图上传功能
May 17 #PHP
php实现姓名根据首字母排序的类与方法(实例代码)
May 16 #PHP
PHP多维数组指定多字段排序的示例代码
May 16 #PHP
php strftime函数获取日期时间(switch用法)
May 16 #PHP
Phpstorm+Xdebug断点调试PHP的方法
May 14 #PHP
You might like
yii框架通过控制台命令创建定时任务示例
2014/04/30 PHP
浅谈PHP中的Trait使用方法
2019/03/22 PHP
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
基于mootools 1.3框架下的图片滑动效果代码
2011/04/22 Javascript
基于jquery中children()与find()的区别介绍
2013/04/26 Javascript
Node.js模拟浏览器文件上传示例
2014/03/26 Javascript
jquery实现鼠标滑过显示提示框的方法
2015/02/05 Javascript
jQuery解析XML文件同时动态增加js文件的方法
2015/06/01 Javascript
全面解析Bootstrap中Carousel轮播的使用方法
2016/06/13 Javascript
基于angular2 的 http服务封装的实例代码
2017/06/29 Javascript
详解vue.js根据不同环境(正式、测试)打包到不同目录
2018/07/13 Javascript
React中this丢失的四种解决方法
2019/03/12 Javascript
el-select数据过多懒加载的解决(loadmore)
2019/05/29 Javascript
js实现无限层级树形数据结构(创新算法)
2020/02/27 Javascript
vue cli3适配所有端方案的实现
2020/04/13 Javascript
原生js实现自定义滚动条组件
2021/01/20 Javascript
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
[48:02]Ti4循环赛第三日 VG vs Liquid和NEWBEE vs DK
2014/07/12 DOTA
[02:51]DOTA2 2015国际邀请赛中国区预选赛第一日战报
2015/05/27 DOTA
[00:32]2018DOTA2亚洲邀请赛EG出场
2018/04/03 DOTA
[01:03:37]Secret vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
用Python编写简单的微博爬虫
2016/03/04 Python
python实现自动解数独小程序
2019/01/21 Python
pandas 时间格式转换的实现
2019/07/06 Python
Python列表的切片实例讲解
2019/08/20 Python
利用python计算时间差(返回天数)
2019/09/07 Python
python自动分箱,计算woe,iv的实例代码
2019/11/22 Python
python使用itchat模块给心爱的人每天发天气预报
2019/11/25 Python
Tensorflow读取并输出已保存模型的权重数值方式
2020/01/04 Python
Python 实现向word(docx)中输出
2020/02/13 Python
python实现全排列代码(回溯、深度优先搜索)
2020/02/26 Python
简单了解python列表和元组的区别
2020/05/14 Python
MxNet预训练模型到Pytorch模型的转换方式
2020/05/25 Python
社会学专业求职信
2014/07/17 职场文书
中秋节寄语2015
2015/03/24 职场文书
风雨哈佛路观后感
2015/06/03 职场文书