Php 干预图像&x2B;拉维尔';s文件存储:存储大小调整/解码的base64图像(干预图像编码()不起作用)
我正在使用jQuery插件,它返回以base64编码的裁剪图像Php 干预图像&x2B;拉维尔';s文件存储:存储大小调整/解码的base64图像(干预图像编码()不起作用),php,laravel,intervention,laravel-storage,Php,Laravel,Intervention,Laravel Storage,我正在使用jQuery插件,它返回以base64编码的裁剪图像 提交表单后(使用base64编码的裁剪图像)-我使用库对其进行解码并调整大小: 最后,我想使用存储已调整大小的图像,这就是我遇到的问题-当我尝试以下操作时: Storage::put($path, (string) $resized_image->encode()); 。。。它不起作用。事实上,它正在工作-它看起来有一些内存泄漏或什么,浏览器的标签冻结,我的RAM和CPU使用率高 所以我试着: dd($resized_i
Storage::put($path, (string) $resized_image->encode());
。。。它不起作用。事实上,它正在工作-它看起来有一些内存泄漏或什么,浏览器的标签冻结,我的RAM和CPU使用率高
所以我试着:
dd($resized_image->encode());
。。。是的,这就是它崩溃的地方——当使用方法时
我不知道为什么,可能是因为我没有使用标准的图像上传,而是使用解码的base64
但是,在另一方面,干预映像可以从base64以及从解码的base64创建新映像实例:
... 在我的例子中,这是可行的:
$resized_image = Image::make($decoded_image)->resize(300, 200);
然后我就可以使用这个方法,一切都会好起来的。但我需要使用
您知道我如何处理此问题吗?假设您使用的是最新版本的Laravel(): 您可以使用如下方法:
//使用jpg格式和100的质量
$resized_image=image::make($decoded_image)->resize(300200)->stream('jpg',100);
//然后使用Illumb\Support\Facades\Storage
Storage::disk('your_disk')->put('path/to/image.jpg',$resized_image);//检查返回的成功和失败
假设您使用的是最新版本的Laravel():
您可以使用如下方法:
//使用jpg格式和100的质量
$resized_image=image::make($decoded_image)->resize(300200)->stream('jpg',100);
//然后使用Illumb\Support\Facades\Storage
Storage::disk('your_disk')->put('path/to/image.jpg',$resized_image);//检查返回的成功和失败
$resized_image = Image::make($decoded_image)->resize(300, 200);