, (*1)
Image Resizer with automatic cache for Yii 2
This extension allows to resize images and automatically cache them., (*2)
Installation
The preferred way to install this extension is through composer., (*3)
Either run, (*4)
php composer.phar require --prefer-dist alex-bond/yii2-thumbler
or add, (*5)
"alex-bond/yii2-thumbler": "*"
to the require section of your composer.json., (*6)
Usage
To use this extension, you need add the following code in your application configuration:, (*7)
return [
//....
'components' => [
'thumbler'=> [
'class' => 'alexBond\thumbler\Thumbler',
'sourcePath' => '/path/to/source/files',
'thumbsPath' => '/path/to/resize/cache',
],
],
];
After this just call resize()
method like this:, (*8)
$path = \Yii::$app->thumbler->resize('image.png',500,500);
As result of this call extension will return path to resized image relative to $thumbsPath
., (*9)
Methods
resize($image, $width, $height, $method = Thumbler::METHOD_NOT_BOXED, $backgroundColor = 'ffffff', $callExceptionOnError = true), (*10)
Parameter |
Description |
Possible Values |
$image |
Path to image based relative to $sourcePath |
String |
$width |
Width of needed image in pixels |
int |
$height |
Height of needed image in pixels |
int |
$method |
Resize algorithm |
Thumbler::METHOD_BOXED;
Thumbler::METHOD_NOT_BOXED;
Thumbler::METHOD_CROP_TOP_LEFT;
Thumbler::METHOD_CROP_TOP_CENTER;
Thumbler::METHOD_CROP_TOP_RIGHT;
Thumbler::METHOD_CROP_MIDDLE_LEFT;
Thumbler::METHOD_CROP_CENTER;
Thumbler::METHOD_CROP_MIDDLE_RIGHT;
Thumbler::METHOD_CROP_BOTTOM_LEFT;
Thumbler::METHOD_CROP_BOTTOM_CENTER;
Thumbler::METHOD_CROP_BOTTOM_RIGHT;
|
$backgroundColor |
Background color for `Thumbler::METHOD_BOXED` algorithm |
String (HEX color) |
$callExceptionOnError |
When `true` extension will caught exception on error. If `false` extension will just add error in internal array which can be called by `getLastError()` |
boolean |
getLastError(), (*11)
Returns last error description., (*12)
clearImageCache($image), (*13)
Clears all cache for selected image file., (*14)
clearAllCache(), (*15)
Clears all cache., (*16)