如何在存储在AWS Laravel之前调整图像大小?
问题描述:
任何人都可以在使用Laravel将图像存储到我的AWS S3存储之前为我提供调整图像大小的帮助吗?我的问题是我的网站正在通过Heroku运行,更大的图像使网站/应用程序崩溃。我试过安装图像/干预,似乎没有任何工作。有没有人有一个快速解决这个问题,或者你可以指出我在正确的方向吗?如何在存储在AWS Laravel之前调整图像大小?
这是我用于存储代码:
if ($request->file('board_img')) {
$hashname = $request->file('board_img')->hashName();
Storage::disk('s3')->put('wod-pictures/', $request->file('board_img'), 'public');
$wod_img = "wod-pictures/" . $hashname;
} else {
$wod_img = $request->get('board_img');
}
答
安装Image Intervention,注册Image
外观和使用stream()
和toString()
方法,例如:
$image = Image::make($file)->fit($width, $height)->stream();
Storage::disk('s3')->put('image_file_name', $image->__toString());
+0
所以安装Image干涉,但是当我使用fit方法时它说方法不存在 –
中的干预将在S3应该工作之前调整正好。当你试图使用它时发生了什么?你能分享你遇到的代码和错误吗? – ceejayoz
这是我用于图像干预的代码:$ image = Image :: make($ request-> file('board_img') - > resize(150,300));当我运行它时,我调整大小不是一种方法? –
这是因为你弄乱了你的括号。 '$ image = Image :: make($ request-> file('board_img')) - >调整大小(150,300);'应该工作。 – ceejayoz