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

yipeiwu_com7年前PHP代码库

用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);
     
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【宜配屋www.yipeiwu.com】。

相关文章

php源代码安装常见错误与解决办法分享

错误:configure: error: libevent >= 1.4.11 could not be found 解决:yum -y install libevent libe...

总结的一些PHP开发中的tips(必看篇)

一、开发习惯和php代码 1、准确的理解各种概念。现在的新东西层出不穷,望文生义和一知半解对开发工作有害无益;//比如我就碰到有人理解松散耦合(这个东西不新)的概念居然是要求代码不要有空...

PHP设计模式之迭代器模式的深入解析

PHP设计模式之迭代器模式的深入解析

迭代器(Iterator)模式,它在一个很常见的过程上提供了一个抽象:位于对象图不明部分的一组对象(或标量)集合上的迭代。迭代有几种不同的具体执行方法:在数组属性,集合对象,数组,甚至一...

PHP strripos函数用法总结

php strripos()函数 语法 作用:寻找某字符串中某字符最后出现的位置,不区分大小写 语法: strripos(string,find,start) 参数: string...

php环境无法上传文件的解决方法

一、 检查网站目录的权限。 上传目录是否有写入权限。二、 php.ini配置文件 php.ini中影响上传的有以下几处: file_uploads 是否开启 on 必须开启 是否允许HT...