Web 应用程序图像旋转问题
Web App Image Rotate Issue
问题:
上传取自iPhone的图片时,网站上显示的是逆时针旋转90度。我已经完成研究并了解图像文件中包含的某些元数据是导致此问题的原因。是否有一个好的库来确定此元数据是否在文件中并正确旋转它?
我的应用程序是使用 Laravel 构建的,我正在查看 Intervention Image 以查看是否可以解决此问题。
谢谢!
更新:
还是不行。我已经检查了 php 模块并且在服务器上启用了 exif 和 mbstring。
这是我的 laravel 控制器中的代码。图像保存到我指定的目录,但方向不正确。在移动设备上拍摄的图像在桌面上仍显示为已旋转。谢谢!
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 进行自动旋转)可以使用此数据。
问题:
上传取自iPhone的图片时,网站上显示的是逆时针旋转90度。我已经完成研究并了解图像文件中包含的某些元数据是导致此问题的原因。是否有一个好的库来确定此元数据是否在文件中并正确旋转它?
我的应用程序是使用 Laravel 构建的,我正在查看 Intervention Image 以查看是否可以解决此问题。
谢谢!
更新:
还是不行。我已经检查了 php 模块并且在服务器上启用了 exif 和 mbstring。
这是我的 laravel 控制器中的代码。图像保存到我指定的目录,但方向不正确。在移动设备上拍摄的图像在桌面上仍显示为已旋转。谢谢!
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 进行自动旋转)可以使用此数据。