Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



61 Commits

Repository files navigation


Build Status Opensource ByJG GitHub source GitHub license GitHub release

A wrapper collection for GD library in PHP. Defines a set of methods for flip, crop, resize, stamp and others easily.


composer require "byjg/imageutil"

Creating the Image

// From the file system
$img = new ImageUtil('path_to_image.png');

// From an URL
$img2 = new ImageUtil('http://somesite/someimage.jpg');

// From an existing resource image
$resourceImg = imagecreatetruecolor(200, 300);
$img3 = new ImageUtil($resourceImg);

// Or empty image
$img4 = ImageUtil::empty(200, 300, new Color(255, 255, 255));

Flip an image

Mirrors the given image in the desired way.i

$img = new ImageUtil('wheel.png');
$img->flip(Flip::Vertical)->resize(120, null)->save('wheel.jpg');


Rotates the image to any direction using the given angle.

$img = new ImageUtil('wheel.png');


Resize the image to an new size. Size can be specified in the arguments.

$img = new ImageUtil('wheel.png');
$img->resize(640, 480);

Resize Square

Resize the image into a square format and maintain the aspect ratio. The spaces left are filled with the RGB color provided.

$img = new ImageUtil('wheel.png');

Resize and maintain the AspectRatio

Resize the image but the aspect ratio is respected. The spaces left are filled with the RGB color provided.

$img = new ImageUtil('wheel.png');
$img->resizeAspectRatio(200, 150)

Stamp Image

Stamp an image in the current image.

$img = new ImageUtil('wheel.png');
$stamp = new ImageUtil('');
$img->stampImage($stamp, StampPosition::BottomRight);

Write Text

Writes a text on the image.

$img = new ImageUtil('wheel.png');
$img->writeText('Sample', 0, 70, 45, 'Arial');

Crop Image

Crops the given image from the ($from_x,$from_y) point to the ($to_x,$to_y) point.

$img = new ImageUtil('wheel.png');

Make Transparent

Make the image transparent. The transparent color must be provided.

$img = new ImageUtil('wheel.png');
$img->makeTransparent(new Color(255, 255, 255));

Restoring the changes


Destroy the resouce


Saving the Image


Other functions

// Get the image dimension
$witdh = $img->getWidth();
$height = $img->getHeight();

// Get the image resource
$resource = $img->getImage();


flowchart TD  
    byjg/imageutil --> ext-gd  

Open source ByJG