问题:
当上传从 iPhone 拍摄的图像时,它会逆时针旋转 90 度显示在网站上。我已经完成研究并了解图像文件中包含的某些元数据导致了这种情况。是否有一个好的库来确定此元数据是否在文件中并正确旋转它?
我的应用程序是用 Laravel 构建的,我正在查看 Intervention Image 看看是否可以解决这个问题。
谢谢!
更新:
还是不行。我已经检查了服务器上启用的 php 模块和 exif 和 mbstring。
这是我在 Laravel Controller 中的代码。图像保存到我指定的目录,但方向不正确。在移动设备上拍摄的图像在桌面上仍显示为已旋转。谢谢!
if (Input::hasFile('profile-image'))
{
$extension = Input::file('profile-image')->getClientOriginalExtension();
$fileName = rand(11111,99999).'.'.$extension;
$image = Image::make(Input::file('profile-image'))->orientate()->save('images/profiles/'.$fileName);
Auth::user()->update([
'image_path' => $fileName,
]);
}
最佳答案
是的,您需要它提供的 orientate()
函数。
http://image.intervention.io/api/orientate
现代相机将 EXIF 数据添加到照片中,包括方向(以及有关闪光、曝光、光圈等的详细信息)。 Intervention 和其他库(我过去使用 jhead 进行自动旋转)可以使用此数据。
关于ios - Web 应用程序图像旋转问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34625129/