da荣誉/my-symfony

Symfony 框架的 Glide 图像处理库扩展包

安装次数: 44

依赖项: 0

建议者: 0

安全: 0

星标: 2

关注者: 1

分支: 0

开放问题: 1

类型:symfony-bundle

1.0.1 2024-07-17 18:35 UTC

This package is auto-updated.

Last update: 2024-09-17 19:00:39 UTC


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

  1. 使用 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">
  1. 使用 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 许可证