在 Laravel 5.1 中使用 Intervention Image 包将图片颜色变灰

Intervention Image 是一个功能强大的 PHP 图片处理库,可用于将图片创建、编辑及组合等操作,并且提供了相关服务提供者和门面,所以很容易在 Laravel 中集成。下面我们就来演示如何在 Laravel 中使用 Intervention Image 提供的功能将图片变灰。

首先使用 Composer 安装 intervention/image 依赖包:

composer require intervention/image

然后打开 config/app.php 配置文件,注册服务提供者到 providers 数组:

Intervention\Image\ImageServiceProvider::class

接着在该文件的 aliases 数组中添加门面:

'Image' => Intervention\Image\Facades\Image::class

接下来打开 routes.php 文件添加如下路由:

Route::get('/image/grayscale', function(){
    $img = Image::make(public_path('uploads/LaravelAcademy.jpg'))->greyscale();
    return $img->response('jpg');
});

然后我们在 public/uploads 目录下添加一张图片 LaravelAcademy.jpg

LaravelAcademy

最后在浏览器中访问 http://dev.laravel.app/image/grayscale,图片显示如下:

grayscale

注意: Intervention/image 用到了 PHP 的 GD 库来处理所有图片,所以使用前要确保服务器安装了 PHP 的 GD 库扩展。

学院君

学院君 has written 548 articles

资深PHP工程师,Laravel学院院长