Laravel 图像干预避免旋转

Laravel Image Intervention avoid rotation

我正在上传一张 iPhone 图像 - 由 iPhone 相机垂直拍摄 - 尺寸为 2448x3264 因为这个尺寸在我创建时非常高 (?) 600x360 的大拇指会自动水平旋转。

我试过什么都没有成功:

拇指的最大高度必须为 360,如果宽度不是 600 我也可以。

$imageResize = Image::make($originalFile);
$imageResize->fit(600, 360, function ($constraint)
{
    $constraint->upsize();
});
$imageResize->save($thumbPath);

我的目标是:

我怎样才能做到这一点?

根据 this github issue 你可能需要 运行 orientate()fit():

之前
$imageResize = Image::make($originalFile)
    ->orientate()
    ->fit(600, 360, function ($constraint) {
        $constraint->upsize();
    })
    ->save($thumbPath);

如前所述,图像以正确的方向保存,在调整大小时您 运行 fit() function on which I was able to find some information on this issue running along side that which suggests you need to use orientate() 适合。

这里有一个例子:

$imageResize = Image::make($originalFile);
$imageResize->orientate()
->fit(600, 360, function ($constraint) {
    $constraint->upsize();
})
->save($thumbPath);

很高兴这对您有所帮助。

$img = Image::make($originalFile);

$img->orientate();
$img->resize(1024, null, function($constraint){
    $constraint->upsize();
    $constraint->aspectRatio();
});
$img->save();