Skip to content

Provides methods for the dynamic manipulation of images. Various image formats such as JPEG, PNG, and GIF can be resized, cropped, rotated.

License

Notifications You must be signed in to change notification settings

yii2mod/yii2-image

Repository files navigation

Yii2 Image Extension


Provides methods for the dynamic manipulation of images. Various image formats such as JPEG, PNG, and GIF can be resized, cropped, rotated.

Latest Stable Version Total Downloads License

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist yii2mod/yii2-image "*"

or add

"yii2mod/yii2-image": "*"

to the require section of your composer.json.

Configuration

Component Setup

To use the Image Component, you need to configure the components array in your application configuration:

'components' => [
    'image' => [
        'class' => 'yii2mod\image\ImageComponent',
    ],
],

Attach the behavior to the model

You need to add the ImageBehavior to the your model.

public function behaviors()
{
    return [
        'image' => [
            'class' => ImageBehavior::class,
            'pathAttribute' => 'path',
        ],
    ];
}

Action Setup

You need to add the ImageAction to the your controller.

public function actions()
{
    return [
        'image' => 'yii2mod\image\actions\ImageAction'
    ];
}

Configuring image types

Next, you should configure your params section in your configuration file:

'params' => [
    'image' => [
        'medium' => [
            'thumbnail' => [
                'box' => [194, 194],
                'mode' => 'outbound'
            ],
            'visible' => 'user', //checking role before outputing url
        ],
        'home' => [
            'thumbnail' => [
                'box' => [640, 480],
                'mode' => 'inset',
            ],
            'watermark' => [
                'watermarkFilename' => '@app/web/images/watermark.png',
            ],
        ],
    ],
],

Usage:

$model = Model::find()->one();
echo $model->url('medium'); // home is the type of photo.

Support us

Does your business depend on our contributions? Reach out and support us on Patreon. All pledges will be dedicated to allocating workforce on maintenance and new awesome stuff.

About

Provides methods for the dynamic manipulation of images. Various image formats such as JPEG, PNG, and GIF can be resized, cropped, rotated.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages