问题描述
我想使用以下 Laravel Spatie 媒体库 (https://github.com/spatie/laravel-medialibrary) 进行图像处理。有什么可能的方法如何在不使用“withResponsiveImages”的情况下为媒体生成仅且仅“微小且模糊的微小”图像?我通过 registerMediaConversions 生成了三个转换。我还想为这三个对话提供小版本,但别无其他(我不想生成任何其他响应式图像)。 withResponsiveImages 默认生成很多不需要的文件。
感谢您的帮助。
解决方法
由于 spatie/medialibrary 在幕后使用 spatie/image,您可以简单地使用它们的模糊功能和调整大小方法来获得较小的图像 (https://spatie.be/docs/image/v1/image-manipulations/effects#blur),然后简单地使用 {{1} 将该图像转换为 base64 }.
默认情况下,Laravel 在上传后不会为您提供文件,不确定来自 spatie/image 的实例,但无论哪种方式,您都可能需要创建一个临时文件,然后将其转换为 base64 以存储该值。
他们的 repo 中提供了可能对您有所帮助的答案 -> https://github.com/spatie/laravel-medialibrary/issues/1269