问题描述
在Laravel 5.8项目中,我正在使用Spatie Media Library
插件来处理图像。现在,我想使用Intervention Image
插件进行一些调整大小和裁剪。
这是我的代码的一部分:
if ($request->input('thumbnail',false)) {
$automobil->addMedia(storage_path('tmp/uploads/' . $request->input('thumbnail')))->toMediaCollection('thumbnail');
}
如何在此代码中包含Image
类?或如何调整其大小并适合适当的尺寸?我通常这样使用它:
$image = $request->file('image');
$filename = $image->getClientOriginalName();
//Fullsize
$image->move(public_path().'/uploads/'.'/products/'.'/original/',$filename);
$image_resize = Image::make(public_path().'/uploads/'.'/products/'.'/original/'.$filename);
//watermark add
$image_resize->insert(public_path('watermark/watermark.jpg'),'bottom-right',300,50);
$image_resize->fit(1280,720);
$image_resize->save(public_path('uploads/products/original/' .$filename));
但是media library
不允许我这样使用它,因为它会将图像保存在其他文件夹和其他数据库表中。
我不想使用MediaConversion
解决方法
对缩略图集中的大/全尺寸图片进行转换
$mediaItems = $yourModel->getMedia('thumbnail');
$image_resize = Image::make($mediaItems[0]->getPath('yourfullsizeconversion'));
,
尝试一下
$image = $request->file('image');
$filename = $image->getClientOriginalName();
$location = public_path('uploads/products/original/' . $filename);
$image_resize = Image::make($image)->insert(public_path('watermark/watermark.jpg'),'bottom-right',300,50)->fit(1280,720)->save($location);// Image save and check image in public/uploads/products/original folder.