【问题标题】:Laravel - Spatie Medial LibraryLaravel - Spatie 媒体库
【发布时间】:2020-08-22 15:29:49
【问题描述】:

在我的 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

【问题讨论】:

    标签: laravel intervention laravel-medialibrary


    【解决方案1】:

    为缩略图集中的大/全尺寸图像进行转换

    $mediaItems = $yourModel->getMedia('thumbnail');
    $image_resize = Image::make($mediaItems[0]->getPath('yourfullsizeconversion'));
    

    【讨论】:

    • if ($request->input('thumbnail', false)) { $mediaItems = $yourModel->getMedia('thumbnail'); $image_resize = Image::make($mediaItems[0]->getPath('yourfullsizeconversion')); } 你的意思是这样的?
    【解决方案2】:

    试试这个

    $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. 
    

    【讨论】:

      猜你喜欢
      • 2019-02-01
      • 2018-09-15
      • 1970-01-01
      • 2020-06-14
      • 2022-07-07
      • 1970-01-01
      • 2021-07-12
      • 1970-01-01
      • 2021-03-03
      相关资源
      最近更新 更多