Image toolkits

Functions for image file manipulations.

Drupal's image toolkits provide an abstraction layer for common image file manipulations like scaling, cropping, and rotating. The abstraction frees module authors from the need to support multiple image libraries, and it allows site administrators to choose the library that's best for them.

PHP includes the GD library by default so a GD toolkit is installed with Drupal. Other toolkits like ImageMagick are available from contrib modules. GD works well for small images, but using it with larger files may cause PHP to run out of memory. In contrast the ImageMagick library does not suffer from this problem, but it requires the ISP to have installed additional software.

Image toolkits are discovered based on the associated module's hook_image_toolkits. Additionally the image toolkit include file must be identified in the files array in the file. The toolkit must then be enabled using the admin/config/media/image-toolkit form.

Only one toolkit may be selected at a time. If a module author wishes to call a specific toolkit they can check that it is installed by calling image_get_available_toolkits(), and then calling its functions directly.


drupal/includes/, line 8
API for manipulating images.


Namesort descending Location Description
image_crop drupal/includes/ Crops an image to a rectangle specified by the given dimensions.
image_desaturate drupal/includes/ Converts an image to grayscale.
image_dimensions_scale drupal/includes/ Scales image dimensions while maintaining aspect ratio.
image_gd_check_settings drupal/modules/system/ Verify GD2 settings (that the right version is actually installed).
image_gd_create_tmp drupal/modules/system/ Create a truecolor image preserving transparency from a provided image.
image_gd_crop drupal/modules/system/ Crop an image using the GD toolkit.
image_gd_desaturate drupal/modules/system/ Convert an image resource to grayscale.
image_gd_get_info drupal/modules/system/ Get details about an image.
image_gd_load drupal/modules/system/ GD helper function to create an image resource from a file.
image_gd_resize drupal/modules/system/ Scale an image to the specified size using GD.
image_gd_rotate drupal/modules/system/ Rotate an image the given number of degrees.
image_gd_save drupal/modules/system/ GD helper to write an image resource to a destination file.
image_gd_settings drupal/modules/system/ Retrieve settings for the GD2 toolkit.
image_gd_settings_validate drupal/modules/system/ Validate the submitted GD settings.
image_get_available_toolkits drupal/includes/ Gets a list of available toolkits.
image_get_info drupal/includes/ Gets details about an image.
image_get_toolkit drupal/includes/ Gets the name of the currently used toolkit.
image_load drupal/includes/ Loads an image file and returns an image object.
image_resize drupal/includes/ Resizes an image to the given dimensions (ignoring aspect ratio).
image_rotate drupal/includes/ Rotates an image by the given number of degrees.
image_save drupal/includes/ Closes the image and saves the changes to a file.
image_scale drupal/includes/ Scales an image while maintaining aspect ratio.
image_scale_and_crop drupal/includes/ Scales an image to the exact width and height given.
image_toolkit_invoke drupal/includes/ Invokes the given method using the currently selected toolkit.