yii-ext/yii-easyimage
Composer 安装命令:
composer require yii-ext/yii-easyimage
包简介
Yii Framework extension for easy creating and caching thumbnails on real time.
README 文档
README
You don't need to create many types of thumbnails for images in your project.
You can create a thumbnail directly in the View. Thumbnail will automatically cached. It's easy!
Features:
- Easy to use
- Support
GDandImagick - Automaticly thumbnails caching
- Cache sorting to subdirectories
- Support
Retinadisplays - Based on Kohana Image Library.
##Installing and configuring
Extract the EasyImage folder under protected/extensions
Add the following to your config file components section:
'components'=>array( //... 'easyImage' => array( 'class' => 'application.extensions.easyimage.EasyImage', 'password' => 'password' // used for image action //'driver' => 'GD', //'quality' => 100, //'cachePath' => '/assets/easyimage/', //'cacheTime' => 2592000, //'retinaSupport' => false, ),
and the following to import section:
'import' => array( //... 'ext.easyimage.EasyImage' ),
##Usage ###InstanceOf
$image = new EasyImage('/path/to/image.jpg'); $image->resize(100, 100); $image->save('/full/path/to/thumb.jpg');
####Parameters
- string
$filerequired - Image file path - string
$driver- Driver:GD,Imagick
ThumbOf
You can create a thumbnail directly in the View:
// Create and autocache Yii::app()->easyImage->thumbOf('/path/to/image.jpg', array('rotate' => 90)); // or Yii::app()->easyImage->thumbOf('image.jpg', array('rotate' => 90), array('class' => 'image')); // or Yii::app()->easyImage->thumbOf('image.png', array( 'resize' => array('width' => 100, 'height' => 100), 'rotate' => array('degrees' => 90), 'sharpen' => 50, 'background' => '#ffffff', 'type' => 'jpg', 'quality' => 60, ));
Note. This method return CHtml::image()
####Parameters
- string
$filerequired - Image file path - array
$params- Image manipulation methods. See Methods - array
$htmlOptions- options for CHtml::image()
ThumbSrcOf
Yii::app()->easyImage->thumbSrcOf('image.jpg', array('crop' => array('width' => 100, 'height' => 100)));
Note. This method return path to image cached. ####Parameters
- string
$filerequired - Image file path - array
$params- Image manipulation methods. See Methods
##Methods ###Resize
$image->resize(100, 100, EasyImage::RESIZE_AUTO);
Yii::app()->easyImage->thumbOf('image.jpg', array('resize' => array('width' => 100, 'height' => 100)));
####Parameters
- integer
$width- New width - integer
$height- New height - integer
$master- Master dimension:EasyImage::RESIZE_NONE,EasyImage::RESIZE_WIDTH,EasyImage::RESIZE_HEIGHT,EasyImage::RESIZE_AUTO,EasyImage::RESIZE_INVERSE,EasyImage::RESIZE_PRECISE
###Crop
$image->crop(100, 100);
Yii::app()->easyImage->thumbOf('image.jpg', array('crop' => array('width' => 100, 'height' => 100)));
####Parameters
- integer
$widthrequired - New width - integer
$heightrequired - New height - mixed
$offset_x=NULL- Offset from the left - mixed
$offset_y=NULL- Offset from the top
###Rotate
$image->rotate(45);
Yii::app()->easyImage->thumbOf('image.jpg', array('rotate' => array('degrees' => 45))); // or Yii::app()->easyImage->thumbOf('image.jpg', array('rotate' => 45));
####Parameters
- integer
$degreesrequired - Degrees to rotate: -360-360
###Flip
$image->flip(EasyImage::FLIP_HORIZONTAL);
Yii::app()->easyImage->thumbOf('image.jpg', array('flip' => array('direction' => EasyImage::FLIP_HORIZONTAL))); // or Yii::app()->easyImage->thumbOf('image.jpg', array('flip' => EasyImage::FLIP_VERTICAL));
####Parameters
- integer
$directionrequired - Direction:EasyImage::RESIZE_NONE,EasyImage::RESIZE_WIDTH.
###Sharpen
$image->sharpen(20);
Yii::app()->easyImage->thumbOf('image.jpg', array('sharpen' => array('amount' => 20))); // or Yii::app()->easyImage->thumbOf('image.jpg', array('sharpen' => 20));
####Parameters
- integer
$amountrequired - Amount to sharpen (percent): 1-100
###Reflection
// Create a 50 pixel reflection that fades from 0-100% opacity $image->reflection(50); // Create a 50 pixel reflection that fades from 100-0% opacity $image->reflection(50, 100, TRUE); // Create a 50 pixel reflection that fades from 0-60% opacity $image->reflection(50, 60, TRUE);
Yii::app()->easyImage->thumbOf('image.jpg', array('reflection' => array('height' => 50))); // or Yii::app()->easyImage->thumbOf('image.jpg', array('reflection'));
Note. By default, the reflection will be go from transparent at the top to opaque at the bottom. ####Parameters
- integer
$height=NULL- Reflection height - integer
$opacity=100- Reflection opacity: 0-100 - boolean
$fade_in=FALSE-TRUEto fade in,FALSEto fade out
###Watermark
$mark = new EasyImage('watermark.png'); $image->watermark($mark, TRUE, TRUE); // or $image->watermark('watermark.png', 20, 20);
Yii::app()->easyImage->thumbOf('image.jpg', array('watermark' => array('watermark' => 'mark.png', 'opacity' => 50)));
Note. If no offset is specified, the center of the axis will be used. If an offset of TRUE is specified, the bottom of the axis will be used.
####Parameters
- mixed
$watermarkrequired - WatermarkEasyImageinstance or path to Image - integer
$offset_x=NULL- Offset from the left - integer
$offset_y=NULL- Offset from the top - integer
$opacity=100- Opacity of watermark: 1-100
###Background
$image->background('#000', 50);
Yii::app()->easyImage->thumbOf('image.jpg', array('background' => array('color' => '#ffffff', 'opacity' => 50))); // or Yii::app()->easyImage->thumbOf('image.jpg', array('background' => '#ffffff'));
Note This is only useful for images with alpha transparency. ####Parameters
- string
$colorrequired - Hexadecimal color value - integer
$opacity=100- Background opacity: 0-100
###Quality
Yii::app()->easyImage->thumbOf('image.jpg', array('quality' => 60)));
//not support: $image->quality(60); // see $image->render(NULL, 60);
Note This is only useful for JPG images.
####Parameters
- integer required - Quality of image: 1-100
###Type
Yii::app()->easyImage->thumbOf('image.png', array('type' => 'jpg')));
//not support: $image->type('jpg'); // see $image->render('jpg');
####Parameters
- string required - Image type to return:
png,jpg,gif, etc
###Save
// Save the image as a PNG $image->save('image.png'); // Overwrite the original image $image->save();
####Parameters
- string
$file=NULL- New image path - integer
$quality=100- Quality of image: 1-100
###Render
// Render the image at 50% quality $data = $image->render(NULL, 50); // Render the image as a PNG $data = $image->render('png');
####Parameters
- string
$type=NULL- Image type to return:png,jpg,gif, etc - integer
$quality=100- Quality of image: 1-100
统计信息
- 总下载量: 37
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: New
- 更新时间: 2014-05-27