CodeIgniter Resizing and Cropping Images on the Fly

Last updated 1 month ago | 46 views 75     5

Tags:- PHP CodeIgniter

Introduction

Resizing and cropping images on the fly in CodeIgniter is essential for managing image dimensions and optimizing performance. This guide will show you how to effectively use CodeIgniter’s Image Manipulation Class for resizing and cropping images.

✅ Step 1: Install CodeIgniter

Ensure you have CodeIgniter installed. If not, download and set up CodeIgniter from the official website.

✅ Step 2: Load the Image Manipulation Library

In your controller, load the library:

$this->load->library('image_lib');

✅ Step 3: Configure the Image Manipulation Settings

Specify the source image, destination, and other settings for resizing and cropping.

$config['image_library'] = 'gd2';
$config['source_image'] = './uploads/image.jpg';
$config['new_image'] = './uploads/resized_image.jpg';
$config['maintain_ratio'] = TRUE;
$config['width'] = 800;
$config['height'] = 600;

$this->image_lib->initialize($config);

✅ Step 4: Perform the Resizing

if (!$this->image_lib->resize()) {
    echo $this->image_lib->display_errors();
} else {
    echo "Image resized successfully.";
}

✅ Step 5: Crop the Image

Reinitialize the configuration for cropping.

$config['image_library'] = 'gd2';
$config['source_image'] = './uploads/image.jpg';
$config['new_image'] = './uploads/cropped_image.jpg';
$config['x_axis'] = 100;
$config['y_axis'] = 100;
$config['width'] = 400;
$config['height'] = 400;

$this->image_lib->initialize($config);

if (!$this->image_lib->crop()) {
    echo $this->image_lib->display_errors();
} else {
    echo "Image cropped successfully.";
}

✅ Step 6: Clear Image Library Settings

After each operation, clear the settings to prevent conflicts.

$this->image_lib->clear();

Conclusion

Using CodeIgniter’s Image Manipulation Class, you can easily resize and crop images on the fly. This approach is efficient for handling user uploads and optimizing web performance.