Intervention/image は、Laravel 用にカスタマイズされた画像処理ツールで、画像の作成と編集を簡単に表現できます。
この記事は、The EST Group のメンバーである @monkey によって書かれ、最初に PHPHub コミュニティで公開されました。
デモ コードについては、以下を参照してください。 https://github.com/zhengjinghua/ est-image-demo
Homestead を使用して Laravel プロジェクトを迅速に実行する方法のドキュメントを参照してください。
2) ServiceProvider を追加するために app/config/app.php を変更します:
composer require intervention/image
2. 画像処理ライブラリの構成
本拡張パッケージ 画像処理にはデフォルトではPHPのGDライブラリが使用されますが、GDライブラリは画像処理効率がimagemagickライブラリに若干劣るため、置き換えることを推奨します
// 将下面代码添加到 providers 数组中'providers' => [ // ... Intervention\Image\ImageServiceProvider::class, // ... ],// 将下面代码添加到 aliases 数组中'aliases' => [ // ... 'Image' => Intervention\Image\Facades\Image::class, // ... ],始める前に、まず GD または Imagick がローカルにインストールされていることを確認する必要があります。
以下に示すように:
さらに、以下に示すように、ImageManager の静的バージョンを使用することもできます。 :
config/image.php 構成ファイルの生成:
// 引入 composer autoloadrequire 'vendor/autoload.php';// 导入 Intervention Image Manager Classuse Intervention\Image\ImageManager;// 通过指定 driver 来创建一个 image manager 实例$manager = new ImageManager(array('driver' => 'imagick'));// 最后创建 image 实例$image = $manager->make('public/foo.jpg')->resize(300, 200);
上記のコマンドを実行すると、プロジェクト内に config/image.php 構成ファイルが生成されます。このファイルを作成し、ドライバーを imagick に変更します。
// 引入 composer autoloadrequire 'vendor/autoload.php';// 导入 Intervention Image Manager Classuse Intervention\Image\ImageManagerStatic as Image;// 通过指定 driver 来创建一个 image manager 实例 (默认使用 gd)Image::configure(array('driver' => 'imagick'));// 最后创建 image 实例$image = Image::make('public/foo.jpg')->resize(300, 200);
これで完了です。この拡張パッケージはインストールに成功しました:beers: :beers: :beers:
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravel5"
3. 基本的な使用法
return array( 'driver' => 'imagick');
4. 主な機能
// 修改指定图片的大小$img = Image::make('images/avatar.jpg')->resize(200, 200);// 插入水印, 水印位置在原图片的右下角, 距离下边距 10 像素, 距离右边距 15 像素$img->insert('images/watermark.png', 'bottom-right', 15, 10);// 将处理后的图片重新保存到其他路径$img->save('images/new_avatar.jpg');/* 上面的逻辑可以通过链式表达式搞定 */$img = Image::make('images/avatar.jpg')->resize(200, 200)->insert('images/new_avatar.jpg', 'bottom-right', 15, 10);
画像フィルタリング機能: 統一されたルールに従って画像を変換します;