vadymsemeniuk / yii2-file-processor-module
文件上传和存储扩展
1.0.2
2017-02-14 15:26 UTC
Requires
- imagine/imagine: 0.6.*
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2024-09-14 18:47:28 UTC
README
Yii2 文件处理模块
文件上传和存储扩展
安装
通过 composer 安装此扩展是首选方式。
可以运行
php composer.phar require --prefer-dist vadymsemeniuk/yii2-file-processor-module "*"
或添加
"vadymsemeniuk/yii2-file-processor-module": "*"
到你的 composer.json
文件的 require 部分。
使用方法
扩展安装后,只需在你的代码中使用它即可
./yii migrate --migrationPath=@vendor/metalguardian/yii2-file-processor-module/src/migrations
UploadBehavior
将此添加到模型的 behaviors 中
'upload_image_id' => [
'class' => \metalguardian\fileProcessor\behaviors\UploadBehavior::className(),
'attribute' => 'image_id',
'required' => false,
'image' => true,
DeleteBehavior
将此添加到模型的 behaviors 中
针对单个属性
'delete_image_id' => [
'class' => \backend\components\DeleteBehavior::className(),
'attribute' => 'image_id',
],
针对属性数组
'delete_media_files' => [
'class' => \backend\components\DeleteBehavior::className(),
'attribute' => ['image_id', 'video_id'],
],
UploadDeleteBehavior
将此添加到模型的 behaviors 中
'upload_delete_image_id' => [
'class' => \metalguardian\fileProcessor\behaviors\UploadDeleteBehavior::className(),
'attribute' => 'image_id',
'required' => false,
'image' => true,
PNG 压缩
要为 png 图片启用压缩,请安装 https://pngquant.org。然后将其添加到控制台控制器的操作中 ImageCompressor::compressPngThumbs($path);
,其中 $path 是缩略图文件夹的路径,并设置来自创建文件的用户的 cron 作业,例如 www-data(crontab -u www-data -e)。
添加水印到缩略图
要在创建 FPM::ACTION_ADAPTIVE_THUMBNAIL、FPM::ACTION_THUMBNAIL 或 FPM::ACTION_CANVAS_THUMBNAIL 时添加水印,配置必须如下所示
'sliderThumb' => [
'action' => FPM::ACTION_THUMBNAIL,
'width' => 330,
'height' => 330,
'watermark' => [
'fileName' => $wmarkPath,
'point' => [
'x' => 0,
'y' => 0,
],
'size' => [
'width' => 330,
'height' => 330,
]
],
],
其中 'point'(原始图像上放置水印的点的坐标)和 'size'(水印缩略图的大小,如果它大于原始图像)是可选的,只有 'fileName' 是必需的。如果水印大小大于原始图像,则它将不会粘贴到原始图像中。为了修复这个问题,模块将创建一个与原始图像大小相同的水印缩略图以适应它。