ESSAY / NOTE

thinkphp图像处理thumb处理上传IOS手机图片自动翻转90度

现象:http://www.thinkphp.cn/topic/34280.html 解决此问题要开启php exif和mbstring两个模块 phpstudy开启很简单 Linux开启这个简直是变态。。。我反正是开不起来了 以后有钱请个linux专家来开吧! 网上搜的方法基本都是windows 你重启了就报错 麻痹坑爹 iOS拍摄的图片提供了EXIF信息,Orientation值为6即顺时针90度,有了这个信息我们只需要逆时针旋转90度即可。 伪代码 //下面是php的伪代码 $exif = exif_read_data($image_file);//获取exif信息 if (isset($exif['Orientation']) && $exif['Orientation'] == 6) { //旋转 imagerotate($img,-90,0); 旋转-90度矫正 //具体旋转参数 php图像旋转,图片旋转(逆时针90或者顺时针90)  如下 } Orientation旋转角度 1:0°,6:顺时针90°, 8:逆时针90°,3:180°    
function flip($filename,$src,$degrees = 90)
                    {
                    //读取图片
                    $data = @getimagesize($filename);
                    if($data==false)return false;
                    //读取旧图片
                    switch ($data[2]) {
                    case 1:
                    $src_f = imagecreatefromgif($filename);break;
                    case 2:
                    $src_f = imagecreatefromjpeg($filename);break;
                    case 3:
                    $src_f = imagecreatefrompng($filename);break;
                    }
                    if($src_f=="")return false;
                    $rotate = @imagerotate($src_f, $degrees,0);
                    if(!imagejpeg($rotate,$src,100))return false;
                    @imagedestroy($rotate);
                    return true;
                    }
                //旋转
                flip('/images/'.$picstart.'_max600'.$picend,'/images/'.$picstart.'_max600'.$picend,'-90');  参数1 - 图片路径 参数2 - 保存图片的路径 参数3 - 旋转角度