lee-to/laravel-thumbnails

Laravel 缩略图模块

1.0.2 2022-09-14 20:14 UTC

This package is auto-updated.

Last update: 2024-09-15 00:38:55 UTC


README

所有图像操作都基于 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 = 存储图像的目录(默认从配置文件中获取)