Imanee is a simple Image Manipulation library for PHP. It provides an easy flow and convenient methods for creating thumbnails, watermarks, text writing, animated gifs and more.
Check our live demos for usage examples. Check our documentation for detailed instructions.
Imanee requires PHP >= 5.4 , and one of the following image extensions for PHP: Imagick or GD. It's recommended to use Imagick as it has more features, including animated gifs support (not available with GD).
First make sure you have either Imagick or GD installed and enabled on your PHP server. Imanee will try to use GD if Imagick is not found in the system.
You can add Imanee to your project easily through composer:
$ composer require imanee/imanee
Some simple examples to get you started:
###Thumbnail output
header("Content-type: image/jpg");
$imanee = new Imanee('path/to/my/image.jpg');
echo $imanee->thumbnail(200, 200)->output();
###Writing centralized text on top of an image
header("Content-type: image/jpg");
$imanee = new Imanee('path/to/my/image.jpg');
echo $imanee->placeText('imanee test', 40, Imanee::IM_POS_MID_CENTER)
->output();
###Image composition
header("Content-type: image/jpg");
$imanee = new Imanee('path/to/my/image.jpg');
/** places 4 different png images on the 4 corners of the original image */
echo $imanee->placeImage('img1.png', Imanee::IM_POS_TOP_LEFT)
->placeImage('img2.png', Imanee::IM_POS_TOP_RIGHT)
->placeImage('img3.png', Imanee::IM_POS_BOTTOM_LEFT)
->placeImage('img4.png', Imanee::IM_POS_BOTTOM_RIGHT)
->output()
;
###Animated Gifs from an array of images
$frames[] = 'img01.png';
$frames[] = 'img02.png';
$frames[] = 'img03.png';
$frames[] = 'img04.png';
header("Content-type: image/gif");
echo Imanee::arrayAnimate($frames, 30);
###Animated Gifs from files in a directory
header("Content-type: image/gif");
echo Imanee::globAnimate('resources/*.jpg');
###Forcing GD usage
header("Content-type: image/jpg");
$imanee = new Imanee('path/to/my/image.jpg', new GDResource());
echo $imanee->thumbnail(200, 200)->output();
For more (and complete) examples please have a look at the demos repository: https://github.com/imanee/demos