其他代码 / img-fly
v1.2.2
2024-03-28 03:30 UTC
Requires
- php: ^8.1
- illuminate/routing: ^10.0.0
- illuminate/support: ^10.0.0
- league/glide-laravel: ^1.0.0
Requires (Dev)
- pestphp/pest: ^2.27
README
Laravel ImgFly
此包最初由 shawnsandy 创建。
使用来自 thephpleague 的 Glide 库在 Laravel 应用程序中即时调整图像大小。
Glide 是一个用 PHP 编写的简单易用的按需图像处理库。它通过 HTTP 提供直观的 API,类似于 Imgix 和 Cloudinary 等云图像处理服务。Glide 利用像 Intervention Image(用于图像处理和操作)和 Flysystem(用于文件系统抽象)这样的强大库。
- 使用简单的基于 HTTP 的 API 调整、调整大小和添加图像效果。
- 操作后的图像将自动缓存,并带有很长的过期头提供服务。
- 创建自己的图像处理服务器或将 Glide 直接集成到应用程序中。
- 支持 GD 库和 Imagick PHP 扩展。
- 支持许多响应方法,包括 PSR-7、HttpFoundation 等。
- 可以使用 HTTP 签名来保护图像 URL。
- 借助 Flysystem 库,可与许多不同的文件系统一起使用。
- 由经过实战考验的 Intervention Image 图像处理和操作库提供支持。
- 框架无关,可与任何项目一起使用。
- Composer 准备就绪且符合 PSR-2 标准。
- 获取更多信息 - glide.thephpleague.com
安装包
- 运行 composer require 以安装包
composer require othercode/img-fly
- 将提供者添加到
config\app.php
提供者。
OtherCode\ImgFly\ImgFlyServiceProvider::class,
- 将外观添加到
config\app.php
别名。
'ImgFly' => OtherCode\ImgFly\Facades\ImgFlyFacade::class,
用法
- 显示和调整从您的存储文件夹
storage/app/images
目录的图像大小w=500
将图像宽度设置为500
。
<img src="{{ ImgFly::imgFly('apple-mouse.jpeg?w=500') }}" alt="">
- 显示和调整从您的
public/img
目录的图像大小w=500
将图像宽度参数设置为500
。有关设置其他参数(高度、裁剪、方向)的更多信息,请参阅 Glide 快速参考。
<img src="{{ ImgFly::imgPublic('hands.jpeg?w=500', 'img') }}" alt="">
预设
您还可以使用预设动态调整图像大小。参数设置在配置文件 app/imgfly.php
中。
- 发布配置文件
php artisan vendor:publish --tag=config
- 打开并修改预设
[ "icon" => "?w=60&h=60&fit=crop-center", "small" => "?w=100&h=100&fit=crop-center", "thumbnail" => "?w=200&h=200&fit=crop-center", "medium" => "?w=600&h=400&fit=crop-center", "large" => "?w=1200&h=600&fit=crop-center", ];
- 调用外观
ImgFly::imgPreset(image, preset)
<img src="{{ ImgFly::imgPreset('hands.jpg', 'icon') }}" alt=""> <img src="{{ ImgFly::imgPreset('hands.jpg', 'small') }}" alt=""> <img src="{{ ImgFly::imgPreset('hands.jpg', 'thumbnail') }}" alt="">
安全性
如果您发现任何安全相关的问题,请通过电子邮件 usantisteban@othercode.io 联系我们,而不是使用问题跟踪器。