Leverage Glide to perform on the fly image manipulations in Laravel.
Add the package to the dependencies of your application.
composer require michielkempen/laravel-glide
Configure the package using environment variables.
<?php
return [
'source' => [
/*
* The filesystem where the original files are stored.
*/
'filesystem' => env('GLIDE_SOURCE_FILESYSTEM', 'public'),
/*
* The path within the filesystem where the original files are stored.
*/
'path' => env('GLIDE_SOURCE_PATH', ''),
],
'cache' => [
/*
* The filesystem where the manipulated files will be cached.
*/
'filesystem' => env('GLIDE_CACHE_FILESYSTEM', 'public'),
/*
* The path within the filesystem where the manipulated files will be cached.
*/
'path' => env('GLIDE_CACHE_PATH', 'cache/'),
],
/*
* The secret that is used to sign the manipulation requests.
*/
'secret' => env('GLIDE_SECRET', 'secret'),
/*
* The prefix of the original files endpoint.
*/
'file_endpoint_prefix' => env('FILE_ENDPOINT_PREFIX', '/storage/'),
/*
* The prefix of the manipulated files endpoint.
*/
'glide_endpoint_prefix' => env('GLIDE_ENDPOINT_PREFIX', '/glide/'),
];
Here's a quick example that shows how an image can be modified:
$manipulatedImageUrl = glide($fileName, ['w'=> 50, 'filt'=>'greyscale']);
Take a look at Glide's image API to see which parameters you can pass to the method.
The MIT License (MIT). Please see License File for more information.