Laravel 5 干预图片上传多个尺寸

Laravel 5 intervention image upload multiple size

我正在使用 laravel 5 和干预,并且希望在通过表单上传图像时存储多种尺寸的图像。谁能指导我

所以我不知道你已经做了什么。那么让我们从头开始吧。

首先你需要干预库。所以切换到你的主文件夹(包含你的 composer.json 文件) 然后输入

composer.phar require intervention/image

或者只需将 "intervention/image": "~2.1" 添加到 composer.json 中的 require 数组。 (然后做作曲家更新)

"require": {
    "laravel/framework": "5.0.*",
    "intervention/image": "~2.1"
},

现在你必须添加

'Intervention\Image\ImageServiceProvider',

到供应商数组

'Image' => 'Intervention\Image\Facades\Image'

到你的别名数组。都在 config/app.php

现在您可以在控制器中的某处创建一个 "upload function",例如

public function upload() {
    $image = \Image::make(\Input::file('image'));
    $path = storage_path('app')."/";

    // encode image to png
    $image->encode('png');
    // save original
    $image->save($path."original.png");
    //resize
    $image->resize(300,200);
    // save resized
    $image->save($path."resized.png");
}

这会将两张图片保存到 storage/app 文件夹中。一张为原始尺寸,一张调整为 300x200。

此代码只是一个示例,它不包含对有效图像或类似内容的任何检查。它只需要一个文件(假设是一个图像)并将其保存两次。 当然你也不需要编码为 png...