mamiksik/bowtie-images

Nette Framework 的即时图像生成器

dev-master 2016-09-20 21:21 UTC

This package is not auto-updated.

Last update: 2024-09-20 22:17:59 UTC


README

安装

  1. 在安装时使用 Composer
$ composer require mamiksik/bowtie-images @dev
  1. 在 config.neon 中注册扩展
extensions:
	bowtieImages: BowtieImages\ImageExtension
  1. 享受即时图像生成!

##关于 BowtieImages(BTI) 是一个用于不同尺寸图像的即时生成器。

##缓存 所有生成的图像都会被保存。通过将图像保存在缓存中,我们可以显著提高加载速度。同时,也很好地解决了未使用图像的失效问题。

###生命周期

  1. 请求所需尺寸。
  2. 提供者会尝试在缓存中找到相应的图像。
    1. 图像在缓存中找到,发送出去。
    2. 图像在缓存中未找到,查找原始图像,生成所需尺寸,保存到缓存并发送图像。

##使用

example.cz/images/WidthxHeight/flag/nameOfimage.type
  1. url 前缀 "images" 是可配置的(更多详细信息请参阅配置部分)
  2. 宽度[width]和高度[height]是可选的(可以只指定宽度)
  3. 标志是可选的,已实现以下标志:fit(默认),fillexact(需要宽度和高度)和 stretch(需要宽度和高度)(在后台使用 nette Image

###"nette/route" 写法中的路由

/<namespace>[/<width>x[<height>]][/<flag>]/<filename><type .png|.gif|.jpg|.jpeg>

##存储 这是一个简单的用于保存和删除原始图像的工具。

##配置 BTI 可以配置,但不是必需的。所有功能都默认启用。

bowtieImages:
	tempDir: %tempDir%
	wwwDir: %wwwDir%
	urlPrefix: images #prefix v url
	dataPrefix: data #prefix pro www složku. Nesmí být stejné jako urlPrefix!
	cacheInvalidationTime: 7 days #nette cache expire time

缓存使用 Cache:SLIDING,因此每次加载特定图像时,该图像的过期时间都会重置,并且还使用 Cache:FILES,这会在删除原始图像时删除其他版本的图像。

##计划 测试,测试和更多的测试! :)

生成图像大小的规则

存储原始项目的接口,包括保存、修改或删除

对 latte 的支持,可以选择 LQIP