move_uploaded_file - 阻止旋转/忽略exif数据

时间:2014-09-10 11:38:27

标签: php ios image exif bulletproof

处理自定义CMS的上传图片功能。

我已完成此功能,但在从移动设备上传图片时会显示图像。到目前为止只在IOS上测试过,但问题是:

如果用户选择拍照并以肖像方式拍摄,则保存图像时会旋转-90度。

然而景观却很好。经过一些研究后,我发现它使用图像中的exif数据并查看旋转。有没有办法忽略这些信息并保留拍摄时的图像?

使用类上传我在GitHub上找到的名为bulletproof的图像:

https://github.com/samayo/bulletproof

指向实际班级的链接:

https://github.com/samayo/bulletproof/blob/master/src/bulletproof.php

这是上传部分:

$moveUploadedFile = move_uploaded_file($fileToUpload["tmp_name"], $this->uploadDir . "/" . $newFileName);

谢谢,克雷格。

1 个答案:

答案 0 :(得分:0)

此PHP类不应用任何图像旋转。搜索imagerotate()失败。 因此,这与PHP无关,您可以通过测试来自另一个非iOS客户端的图像上传来确保。

然后,您可能想知道,如果iOS有设置发送原始的,未修改的图像,或者您必须在iOS设备端应用一些"旋转" - 校正以获得正确的发送前轮换。 换句话说:我相信在发送图像之前,图像会在IOS设备端进行转换。

iOS PNG Image rotated 90 degrees

iOS4 landscape photos sideways in e-mail