maxdancepro / yii2-image-crop
Yii2 扩展,用于上传和裁剪图片 Bootstrap 4
1.1.6
2020-01-22 17:35 UTC
Requires
- bower-asset/jcrop: 0.9.*
- yiisoft/yii2: 2.0.*
- yiisoft/yii2-bootstrap4: ^2.0
- yiisoft/yii2-imagine: 2.*
README
Yii2 扩展,用于上传和裁剪图像
安装
建议通过 composer 安装此扩展。
在控制台中执行
php composer.phar require --prefer-dist maxdancepro/yii2-image-crop "*"
或者
"maxdancepro/yii2-image-crop": "*"
在您的 composer.json
文件的 require 部分中添加。
使用方法
当扩展安装完成后,可以按以下方式使用它
在您的模型中
public function behaviors() { return [ [ 'class' => \maxdancepro\image\Behavior::className(), 'savePathAlias' => '@web/images/', 'urlPrefix' => '/images/', 'crop' => true, 'attributes' => [ 'avatar' => [ 'savePathAlias' => '@web/images/avatars/', 'urlPrefix' => '/images/avatars/', 'width' => 100, 'height' => 100, ], 'logo' => [ 'crop' => false, 'thumbnails' => [ 'mini' => [ 'width' => 50, ], ], ], ], ], //другие поведения ]; }
属性验证需要像通常一样通过 rules() 方法进行。
在您的视图文件中包含表单
echo $form->field($model, 'avatar')->widget('maxdancepro\image\Widget');
然后在主要的视图文件中
echo Html::img($model->getImageUrl('avatar')); echo Html::img($model->getImageUrl('logo', 'mini')); //получим url миниатюры под именем 'mini' для атрибута 'logo'
如果您使用 Advanced App Template 并且这种行为位于后端模型中,则可以在前端模型中添加一个特质
use \maxdancepro\image\GetImageUrlTrait
并使用 getImageUrl() 方法在前端模型中。