laravel-thumbnails maintained by lee-to
Description
Laravel thumbnails module
Author
Last update
2025/10/29 16:43
(dev-master)
License
Downloads
2 346
Tags
Генератор миниатюр изображений для Laravel
Все манипуляции с изображениями проводятся на основе пакет https://github.com/Intervention/image
При первом обращении к файлу происходит генерации на основе заданных параметров (метод, размер)
А далее уже берется сгенерированное изображение, тем самым обращаемся к генерации единожды
Установка
composer require lee-to/laravel-thumbnails
php artisan vendor:publish --provider="Leeto\Thumbnails\Providers\ThumbnailsServiceProvider"
Использование
Конфиг
return [
// Диск filesystem
'disk' => env('FILESYSTEM_DISK', 'local'),
// Допустимые значения размеров, в противном случае 403
'allowed_sizes' => ['150x150'],
// Значения по умолчанию для метода thumbnails
'defaults' => [
'field' => 'photo',
'dir' => 'images',
'size' => '150x150',
'method' => 'resize',
]
];
Добавьте trait Leeto\Thumbnails\Traits\WithThumbnails для необходимой модели
<img src="{{ $model->getThumbnail('image', 'crop', '150x150') }}" />
Вывод изображения
$model->getThumbnail($field, $method, $size);
$model->getThumbnail();
// Можно ничего не указывать, тогда установятся значения из конфига defaults
Описание аргументов метода thumbnail
- $field = Поле в таблице в котором хранится наименование изображения или массив изображений
- $method = Метод обработки изображения (Допустимы crop,fit и resize)
- $size = Размер итогового изображения (Пример 100x100 или 100)
- $dir = Директория где хранится изображение (По умолчанию берется из конфига)