da荣誉 / my-symfony
Symfony 框架的 Glide 图像处理库扩展包
1.0.1
2024-07-17 18:35 UTC
Requires
- php: >=7.4
- league/glide-symfony: 2.0.1
- symfony/framework-bundle: ^5.0|^6.0|^7.0
- symfony/twig-bundle: ^5.0|^6.0|^7.0
README
DahRomyGlideBundle 是一个将 Glide 图像处理库集成到您的 Symfony 应用的 Symfony 扩展包。它提供了一种简单的方法来动态处理和提供图像。
有关 Glide 及其功能的更多信息,请参阅 官方 Glide 文档。
要求
- PHP 7.4 或更高版本
- Symfony 5.0 或更高版本
- GD 库或 Imagick PHP 扩展
安装
您可以使用 Composer 安装此扩展包
composer require dahromy/glide-symfony
配置
安装扩展包后,您需要在您的 config/packages/glide.yaml
文件中配置它。以下是一个使用默认值的示例配置
glide: source: '%kernel.project_dir%/public/images' cache: '%kernel.project_dir%/public/cache' driver: gd # Options: gd, imagick defaults: q: 90 fm: 'auto' presets: small: w: 200 h: 200 fit: crop medium: w: 600 h: 400 fit: crop
使用方法
在 Twig 模板中
您可以使用 glide_asset
Twig 函数或 glide
过滤器来生成图像的 URL
- 使用
glide_asset
函数
<img src="{{ glide_asset('path/to/image.jpg', {w: 300, h: 200}) }}" alt="My Image">
或使用预设
<img src="{{ glide_asset('path/to/image.jpg', {}, 'small') }}" alt="My Image">
- 使用
glide
过滤器
<img src="{{ 'path/to/image.jpg'|glide({w: 300, h: 200}) }}" alt="My Image">
与预设一起使用
<img src="{{ 'path/to/image.jpg'|glide({}, 'small') }}" alt="My Image">
在控制器中
您可以在控制器中使用 GlideService
来生成图像 URL 或获取图像响应
use DahRomy\Glide\Service\GlideService; class MyController extends AbstractController { public function myAction(GlideService $glideService) { $imageUrl = $glideService->getImageUrl('path/to/image.jpg', ['w' => 300, 'h' => 200]); // Or get the image response directly $response = $glideService->getImageResponse('path/to/image.jpg', ['w' => 300, 'h' => 200]); // ... } }
功能
- 动态图像处理
- 常见图像大小的预设配置
- 通过签名确保图像 URL 安全
- 与 Twig 模板和控制器轻松集成
贡献
欢迎贡献!请随时提交 Pull Request。
许可证
此扩展包是开源软件,采用 MIT 许可证。