mirko-pagliai / thumbs
Requires
- php: >=5.5.9
- ext-imagick: >=3.0.0
- cakephp/cakephp: ~3.2
This package is not auto-updated.
Last update: 2022-02-01 12:56:01 UTC
README
自2016年11月开始,该仓库已被废弃。
请参阅: cakephp-thumber。
Thumbs
Thumbs是一个用于创建缩略图的CakePHP插件。
它可以创建本地和远程图片的缩略图(矩形或正方形)。
安装
您可以通过composer安装插件
$ composer require --prefer-dist mirko-pagliai/thumbs
您需要编辑APP/config/bootstrap.php
以加载插件
Plugin::load('Thumbs', ['bootstrap' => TRUE, 'routes' => TRUE]);
默认情况下,插件使用APP/tmp/thumbs
目录来创建缩略图。
因此,您必须创建该目录并使其可写
$ mkdir backup && chmod 775 tmp/thumbs/
您可以在插件加载之前通过定义THUMBS
常量来更改此目录。
示例
define('THUMBS', 'alternative'.DS.'directory'.DS.'for'.DS.'thumbnails);
Plugin::load('Thumbs', ['bootstrap' => TRUE, 'routes' => TRUE]);
如何创建缩略图
简单地使用ThumbHelper
,在您已经加载它之后。
基本上,该助手提供了两种方法,resize()
(用于矩形缩略图)和square()
(用于正方形缩略图)。
resize()
和square()
方法
resize()
方法接受height
和/或width
选项。示例
echo $this->Thumb->resize('logo.png', ['width' => 100]);
这将创建并显示一个宽度最大为100像素的APP/webroot/img/logo.png
文件的缩略图。
请注意,如果文件路径是本地文件且是相对路径,则相对于APP/webroot/img
。
您也可以使用完整路径。示例
echo $this->Thumb->resize('/my/full/path/image.jpg', ['height' => 200, 'width' => 100]);
这将创建并显示一个高度最大为200像素、宽度最大为100像素的/my/full/path/image.jpg
文件的缩略图。
您还可以使用远程文件。示例
echo $this->Thumb->resize('www.mysite.com/example.gif', ['width' => 100]);
这将创建并显示一个宽度最大为100像素的www.mysite.com/example.gif
文件的缩略图。
相反,square()
方法创建正方形缩略图并接受side
选项,表示边的长度。示例
echo $this->Thumb->square('logo.png', ['side' => 100]);
这将创建并显示一个边长为100像素的APP/webroot/img/logo.png
文件的方形缩略图。
请注意,对于方形缩略图,缩略图将从图像的中心开始。
这两种方法还接受force
选项(布尔值),该选项强制缩略图大小大于原始图像。示例
echo $this->Thumb->resize('logo.png', ['force' => true, 'width' => 500]);
这将创建并显示一个宽度为500像素的缩略图,即使原始图像更小。
其他方法
助手还提供了resizeUrl()
和squareUrl()
方法,它们简单地返回缩略图的URL。
image()
和url()
方法是魔法方法,根据提供的选项调用其他方法。示例
echo $this->Thumb->image('logo.png', ['width' => 100]);
会调用resize()
方法,因为有width
选项。
版本管理
为了提高透明度,了解我们的发布周期并保持向后兼容性,Thumbs 将按照语义化版本控制指南进行维护。