最近在项目中发现一个有趣的现象。H5上传图片,界面上传服务器保存,前端正常显示图片,后台显示逆时针90°。信息查看者可以看到此图像的方向。简单介绍一下exif,一种图像文件格式。数据存储与JPEG格式完全相同。Exif格式其实就是在JPEG格式的头部插入数码照片的信息。在php中处理图片的exif,首先要打开php.ini中的mbstrig和exif模块$imgInfo=getimagesize($upload_file['filename']);//获取图片大小及相关信息,2为图片类型,2=JPGif($imgInfo[2]==2){$img2=imagecreatefromjpeg($upload_file["filename"]);$exif=exif_read_data($upload_file["文件名"]);//exif_read_data函数可以用来读取图片exif信息if(!empty($exif['Orientation'])){switch($exif['Orientation']){case8:$img2=imagerotate($img2,90,0);imagejpeg($img2,$new_img);休息;案例3:$img2=imagerotate($img2,180,0);imagejpeg($img2,$new_img);休息;案例6:$img2=imagerotate($img2,-90,0);imagejpeg($img2,$new_img);休息;}}imagedestroy($img2);//unlink($upload_file['filename']);}这个可以,可以解决exif图片旋转问题,欢迎指教!
