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动态生成虚拟现实VRML网页
Oct 09 PHP
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
Jan 12 PHP
PHP学习之整理字符串
Apr 17 PHP
PHP+javascript制作带提示的验证码源码分享
May 28 PHP
PHP独立Session数据库存储操作类分享
Jun 11 PHP
php版淘宝网查询商品接口代码示例
Jun 17 PHP
php利用scws实现mysql全文搜索功能的方法
Dec 25 PHP
php在apache环境下实现gzip配置方法
Apr 02 PHP
PHP自带方法验证邮箱是否存在
Feb 01 PHP
php实现和c#一致的DES加密解密实例
Jul 24 PHP
PHP实现实时生成并下载超大数据量的EXCEL文件详解
Oct 23 PHP
作为PHP程序员你要知道的另外一种日志
Jul 30 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
php a simple smtp class
2007/11/26 PHP
PHP获取文件后缀名的三个函数
2012/10/15 PHP
ThinkPHP之R方法实例详解
2014/06/20 PHP
PHP中比较时间大小实例
2014/08/21 PHP
php通过array_merge()函数合并关联和非关联数组的方法
2015/03/18 PHP
php自定义函数实现二维数组按指定key排序的方法
2016/09/29 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
thinkPHP框架自动填充原理与用法分析
2018/04/03 PHP
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
用js来解决ajax读取页面乱码
2010/11/28 Javascript
用jquery实现点击栏目背景色改变
2012/12/10 Javascript
JS保存和删除cookie操作 判断cookie是否存在
2013/11/13 Javascript
javascript跨浏览器的属性判断方法
2014/03/16 Javascript
jQuery实用函数用法总结
2014/08/29 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
AngularJS 最常用的八种功能(基础知识)
2017/06/26 Javascript
jQuery EasyUI开发技巧总结
2017/09/26 jQuery
Angular中使用MathJax遇到的一些问题
2017/12/15 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
vue.js与后台数据交互的实例讲解
2018/08/08 Javascript
vue动画效果实现方法示例
2019/03/18 Javascript
JavaScript如何使用插值实现图像渐变
2020/06/28 Javascript
使用Python开发windows GUI程序入门实例
2014/10/23 Python
在Python的列表中利用remove()方法删除元素的教程
2015/05/21 Python
mac下pycharm设置python版本的图文教程
2018/06/13 Python
python 实现敏感词过滤的方法
2019/01/21 Python
Python字符串的修改方法实例
2019/12/19 Python
pytorch 限制GPU使用效率详解(计算效率)
2020/06/27 Python
Jupyter安装链接aconda实现过程图解
2020/11/02 Python
编写一个 C 函数,该函数在一个字符串中找到可能的最长的子字符串,且该字符串是由同一字符组成的
2015/07/23 面试题
大学生个人自我鉴定
2013/12/03 职场文书
手术室护士节演讲稿
2014/08/27 职场文书
2015国庆66周年宣传语
2015/07/14 职场文书
goland 清除所有的默认设置操作
2021/04/28 Golang
基于PyTorch实现一个简单的CNN图像分类器
2021/05/29 Python
JavaScript阻止事件冒泡的方法
2021/12/06 Javascript