Laravel Intervention/imageを使用してサムネイルを生成
5597 ワード
説明#
Intervention/imageはLaravel用にカスタマイズされた画像処理ツールで、画像を作成、編集するための表現しやすい方法を提供しています.
Demoコードを参照:https://github.com/zhengjinghua/est-image-demo
Demo#
Demoスクリーンショット#
Demo運転#
Homesteadを使用してLaravelプロジェクトを迅速に実行する方法を参照してください.
記事の概要#
インストール;構成情報の変更;基本的な使い方特色ある机能.次は详しく解说する.取付# 1).composerを使用してインストール:
composer require intervention/image上のコマンド
2).app/config/app.phpを変更してServiceProviderを追加する:
//providers配列に次のコードを追加
//aliases配列に次のコードを追加ピクチャ処理ライブラリの構成# この拡張パケットは、デフォルトではPHPのGDライブラリを用いる画像処理を行うが、GDライブラリは、画像の処理効率がimagemagickライブラリに劣るため、ここではimagemagickライブラリに置き換える画像処理を行うことを推奨する.
開始する前に、GDまたはImagickがローカルにインストールされていることを確認しなければなりません.
Intervention Imageを使用する場合は、ImageManagerに配列パラメータを渡すだけでGDとImagickライブラリの切り替えを完了できます.
次のようになります.
//composer autoloadの導入
//Intervention Image Manager Classのインポート
//driverを指定してimage managerインスタンスを作成する
//最後にイメージインスタンスを作成する
また、ImageManagerの静的バージョンも次のように使用できます.
//composer autoloadの導入
//Intervention Image Manager Classのインポート
//driverを指定してimage managerインスタンスを作成する(デフォルトではgd)
//最後にイメージインスタンスを作成する
config/image.phpプロファイルを生成するには、次の手順に従います.
上記のコマンドを実行すると、プロジェクトにconfig/image.phpプロファイルが生成され、このファイルを開きdriverをimagickに変更します.
これで、この拡張パッケージはインストールに成功しました:beers::beers::beers:3.基礎的な使い方#
//指定画像のサイズ変更
//透かし挿入、透かし位置は元の画像の右下、下から10画素、右から15画素
//処理後の画像を別のパスに再保存
/*上の論理はチェーン式で解決できます*/特色機能# この拡張パッケージでは、上記の基本的な使用法に加えて、次のことがサポートされています.
画像アップロード機能;画像キャッシュ機能;画像フィルタ機能:画像を統一規則に従って変換する;画像ダイナミック処理:アクセス画像のURLパラメータに基づいて画像サイズを自動的に調整する
より多くの例は、公式ドキュメントの参考に移動してください.
Intervention/imageはLaravel用にカスタマイズされた画像処理ツールで、画像を作成、編集するための表現しやすい方法を提供しています.
Demoコードを参照:https://github.com/zhengjinghua/est-image-demo
Demo#
Demoスクリーンショット#
Demo運転#
Homesteadを使用してLaravelプロジェクトを迅速に実行する方法を参照してください.
記事の概要#
インストール;構成情報の変更;基本的な使い方特色ある机能.次は详しく解说する.
composer require intervention/image上のコマンド
2).app/config/app.phpを変更してServiceProviderを追加する:
//providers配列に次のコードを追加
'providers' => [
// ...
Intervention\Image\ImageServiceProvider::class,
// ...
],
//aliases配列に次のコードを追加
'aliases' => [
// ...
'Image' => Intervention\Image\Facades\Image::class,
// ...
],
開始する前に、GDまたはImagickがローカルにインストールされていることを確認しなければなりません.
Intervention Imageを使用する場合は、ImageManagerに配列パラメータを渡すだけでGDとImagickライブラリの切り替えを完了できます.
次のようになります.
//composer autoloadの導入
require 'vendor/autoload.php';
//Intervention Image Manager Classのインポート
use Intervention\Image\ImageManager;
//driverを指定してimage managerインスタンスを作成する
$manager = new ImageManager(array('driver' => 'imagick'));
//最後にイメージインスタンスを作成する
$image = $manager->make('public/foo.jpg')->resize(300, 200);
また、ImageManagerの静的バージョンも次のように使用できます.
//composer autoloadの導入
require 'vendor/autoload.php';
//Intervention Image Manager Classのインポート
use Intervention\Image\ImageManagerStatic as Image;
//driverを指定してimage managerインスタンスを作成する(デフォルトではgd)
Image::configure(array('driver' => 'imagick'));
//最後にイメージインスタンスを作成する
$image = Image::make('public/foo.jpg')->resize(300, 200);
config/image.phpプロファイルを生成するには、次の手順に従います.
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravel5"
上記のコマンドを実行すると、プロジェクトにconfig/image.phpプロファイルが生成され、このファイルを開きdriverをimagickに変更します.
return array(
'driver' => 'imagick'
);
これで、この拡張パッケージはインストールに成功しました:beers::beers::beers:3.基礎的な使い方#
//指定画像のサイズ変更
$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);
画像アップロード機能;画像キャッシュ機能;画像フィルタ機能:画像を統一規則に従って変換する;画像ダイナミック処理:アクセス画像のURLパラメータに基づいて画像サイズを自動的に調整する
より多くの例は、公式ドキュメントの参考に移動してください.