Skip to content
php image manipulation library for fun projects
Branch: master
Clone or download
erikaheidi Merge pull request #74 from pionl/master
fixed fail on write when extension is not availiable or uppercased
Latest commit cf390b5 Nov 20, 2015
Type Name Latest commit message Commit time
Failed to load latest commit information.
tests new feature #59 retrieve frames from gif files + remove frames Sep 27, 2015

Build Status Documentation Status Coverage Status License Join the chat at

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

Getting Started

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)

###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)

###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:

You can’t perform that action at this time.