如何使用Laravel中的Spatie包裁剪图像

问题描述

遵循Spatie Media Library中的文档后出现错误。该文档说Internally,spatie/image is used to manipulate the images. You can use any manipulation function from that package.。因此,我尝试使用方法focalCrop(),但它返回错误

这是我目前正在从事的工作:

控制器

auth()->user()
   ->addMediaFromrequest('file')
   ->toMediaCollection('coverphoto')
   ->addMediaConversion('thumb')
   ->focalCrop($cover_width,$cover_height,$coverX,$coverY);

错误

调用未定义的方法Spatie \ MediaLibrary \ Models \ Media :: addMediaConversion()

解决方法

问题应该出在您的模型用户身上。

要使用Spatie Media库,您的模型必须使用spatie中的Trait InteractsWithMedia,并最终实现接口HasMedia。

请查看Spatie thers的官方文档,其中有有关准备模型的详细信息。

祝你好运