creode / laravel-image-optimiser
此软件包最新版本(2.1.0)没有提供许可信息。
2.1.0
2024-05-20 13:01 UTC
Requires
- intervention/image: ^3.0
README
安装
此软件包可以通过composer安装到Laravel项目中。
composer require creode/laravel-image-optimiser
版本
该软件包在幕后使用Intervention Image Library,并尝试保持与它的同步。以下表格显示了软件包的版本和它们使用的Intervention Image Library的版本。
配置
可以通过发布配置文件来配置该软件包。
php artisan vendor:publish --tag="image-optimiser-config"
这将创建一个名为image-optimiser.php
的新文件,位于您的配置目录中。此文件包含软件包的所有配置选项。
使用方法
该软件包旨在提供一个简单的路由,允许您即时优化图像。该路由是/image/{preset}
,并将返回优化后的图像。图像的URL/路径将被作为查询参数传递给优化器。
渲染图像
为了在blade模板中渲染优化后的图像,您可以使用以下代码
{{ route('optimise-image', ['preset' => 'large', 'url' => $media->url]) }}
缓存
为了节省每个图像的处理时间,该软件包将缓存优化后的图像。缓存存储在Laravel的缓存系统中,其生命周期可以在image-optimiser.php
配置文件中配置。默认情况下,缓存存储1年。传递null作为缓存生命周期将禁用缓存。
扩展
该软件包旨在可扩展,以允许创建和使用不同的优化方法。为此,您需要创建一个新的类,该类实现了Modules\ImageOptimiser\app\Concerns\OptimiserInterface
接口。此接口只有一个需要实现的optimise
方法。
完成后,您只需发布软件包的配置,并将image-optimiser.php
配置选项更新为新类。
或者,您可以在image-optimiser.php
配置文件中覆盖optimiser
服务,并将其指向新类。
$this->app->singleton('optimiser', function () { return new MyNewOptimiserClass(); });