avris / micrus-imagine

适用于 Micrus 框架的图像管理器

v4.0.0 2018-01-28 10:27 UTC

This package is auto-updated.

Last update: 2024-08-29 03:58:07 UTC


README

这是一个适用于 Micrus 框架 的模块,允许您以类似 LiipImagineBundle 在 Symfony 中做的方式与 Imagine 集成。

此模块允许您定义图像生成器,这些生成器将自动将一系列过滤器应用于指定的图像并缓存结果。

安装

运行

composer require avris/micrus-imagine

然后,在您的 App\App:registerModules 中注册该模块

yield new \Avris\Micrus\Imagine\ImagineModule;

使用方法

假设您想允许用户将图像附加到他们的帖子中。无论他们上传什么,您都会将原始图像保存在 var/attachments/ 文件夹中,但您只想以 200x200 的缩略图形式显示它,并在左下角添加水印。

config/imagine.yml 中配置模块,例如

source: '%PROJECT_DIR%/var/attachments' # default: '%PROJECT_DIR%/var/pics'
generators:
  thumb:
    thumbnail: { size: [200, 200], mode: outbound }
    watermark: { image: assets/images/logo.png, size: 10%, position: bottomright }

您创建了一个 thumb 生成器,它将两个过滤器应用于原始图像:thumbnailwatermark

现在,无论您想在何处显示缩略图,都放入以下代码

<img src="{{ post.file|imagine('thumb') }}"/>

它将生成一个指向已生成的图像(如果已存在)或生成它的控制器的 URL。

内置的过滤器列表来自 LiipImagineBundle (MIT)。

扩展模块

要创建自己的过滤器,只需实现 Avris\Micrus\Imagine\Filter\LoaderInterface(《imagineFilter》)。

版权