mirko-pagliai / cakephp-thumber
CakePHP 的缩略图插件
Requires
- php: >=8.1
- ext-fileinfo: *
- cakephp/cakephp: ^5.0
- intervention/image: ^2.4
- mirko-pagliai/php-thumber: ~1.6.1
- mirko-pagliai/php-tools: ~1.9.3
Requires (Dev)
- cakephp/cakephp-codesniffer: ^5.0
- phpstan/phpstan: ^1.10.38
- phpunit/phpunit: ^10.1.0 <=10.5.3
- vimeo/psalm: ^5.15.0
- dev-master
- 1.12.0
- 1.11.3
- 1.11.2
- 1.11.1
- 1.11.0
- 1.10.2
- 1.10.1
- 1.10.0
- 1.9.9
- 1.9.8
- 1.9.7
- 1.9.6
- 1.9.5
- 1.9.4
- 1.9.3
- 1.9.2
- 1.9.1
- 1.9.0
- 1.8.1
- 1.8.0
- 1.7.7
- 1.7.6
- 1.7.5
- 1.7.4
- 1.7.3
- 1.7.2
- 1.7.1
- 1.7.0
- 1.6.1
- 1.6.0
- 1.5.2
- 1.5.1
- 1.5.0
- 1.4.1
- 1.4.0
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.1
- 1.1.0
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-develop
- dev-cakephp4
- dev-php7.2
- dev-cakephp3
This package is auto-updated.
Last update: 2024-09-13 14:29:40 UTC
README
cakephp-thumber 是一个用于创建缩略图的 CakePHP 插件。
它使用 intervention/image 并提供
ThumbCreator
,一个用于创建缩略图的实用工具;ThumbHelper
,一个方便的助手,允许您从模板中动态创建缩略图。
从 1.8.0
版本开始,大部分代码已移至 php-thumber 包中,使其成为一个独立于 CakePHP 的 PHP 库。此插件继续存在,所有类和方法保持不变,但它仅包含与 CakePHP 密切相关的代码(命令、助手、中间件等)。命名空间前缀现在为 Thumber\Cake
,不再是 Thumber
。
你喜欢这个插件吗?它的开发需要我花费大量时间。请考虑捐赠的可能性:捐款:一杯咖啡就足够了!谢谢。
要求和支持的格式
cakephp-thumber 需要 GD 库 (>=2.0) 或 Imagick PHP 扩展 (>=6.5.7)。使用 Imagick 是强烈推荐的,因为它提供更好的性能和更多支持的格式。
支持的格式可能因使用的库而异。
有关支持的格式的更多信息,请参阅 Intervention Image 文档。
安装
您可以通过 composer 安装此插件
$ composer require --prefer-dist mirko-pagliai/cakephp-thumber
然后您需要加载插件。有关如何加载插件的信息,请参阅 食谱。
简单来说,您可以执行 shell 命令以启用插件
bin/cake plugin load Thumber/Cake
这将更新您的应用程序的引导方法。
默认情况下,插件使用 APP/tmp/thumbs
目录来保存缩略图。因此,您必须创建该目录并使其可写
$ mkdir tmp/thumbs && chmod 775 tmp/thumbs
如果您想使用不同的目录,请阅读 配置 部分。
旧版 CakePHP 和 PHP 版本的安装
最新的包和 master 分支至少需要 CakePHP 5.0 和 PHP 8.1,当前代码的开发基于这些版本以及 CakePHP 和 PHP 的后续版本。然而,还有一些分支与之前的 CakePHP 和 PHP 版本兼容。
对于 PHP 8.0 和 CakePHP 4 或更高版本
cakephp4 分支至少需要 PHP >=7.4
和 CakePHP ^4.4
。
在这种情况下,您也可以安装该包
$ composer require --prefer-dist mirko-pagliai/cakephp-thumber:dev-cakephp4
请注意,cakephp4
分支将从 2024 年 1 月 5 日起不再更新,除非是安全补丁,并且它与 1.11.3 版本兼容。
对于 PHP 7.2 或更高版本
php7.2 分支至少需要 PHP 7.2。
在这种情况下,您也可以安装该包
$ composer require --prefer-dist mirko-pagliai/cakephp-thumber:dev-php7.2
请注意,从2022年4月29日起,php7.2
分支将不再更新,除非是安全补丁,并且它与1.9.9版本匹配。
对于 PHP 5.6 和 CakePHP 3 或更高版本
cakephp3分支至少需要PHP 5.6和CakePHP 3。
在这种情况下,您也可以安装该包
$ composer require --prefer-dist mirko-pagliai/cakephp-thumber:dev-cakephp3
请注意,从2021年5月7日起,cakephp3
分支将不再更新,除非是安全补丁,并且它与1.9.4版本匹配。
配置
该插件使用一些配置参数,您可以使用\Cake\Core\Configure
类在加载插件之前设置它们。
例如,您可以在应用程序文件APP/config/app.php
的底部这样做。
配置值
Configure::write('Thumber.driver', 'imagick');
设置Thumber.driver
,您可以选择用于创建缩略图的驱动程序。有效值是imagick
或gd
。
Configure::write('Thumber.target', TMP . 'thumbs');
设置Thumber.target
,您可以使用另一个目录来保存插件生成的缩略图。
如何使用
参阅我们的维基百科
并参考我们的API。
测试
要测试的库(GD
或Imagick
)由tests/bootstrap.php
文件中的THUMBER_DRIVER
环境变量设置。默认情况下,使用Imagick
。
例如
if (!getenv('THUMBER_DRIVER')) { putenv('THUMBER_DRIVER=imagick'); } Configure::write('Thumber.driver', getenv('THUMBER_DRIVER'));
此外,一些测试属于imageEquals
组。这些测试生成缩略图并将它们与预加载的缩略图(在tests/comparing_files/
内)进行比较。默认情况下,这些测试不执行,因为如果从不同的环境和系统中生成,图像可能会有所不同。
要排除这些测试,应运行
vendor/bin/phpunit --exclude-group imageEquals
版本控制
为了透明度和对发布周期的洞察,以及保持向后兼容性,Thumber将在语义版本控制指南下维护。