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 module.info 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.
Name | Location | Description |
---|---|---|
image_toolkit_invoke |
drupal/ |
Invokes the given method using the currently selected toolkit. |
image_scale_and_crop |
drupal/ |
Scales an image to the exact width and height given. |
image_scale |
drupal/ |
Scales an image while maintaining aspect ratio. |
image_save |
drupal/ |
Closes the image and saves the changes to a file. |
image_rotate |
drupal/ |
Rotates an image by the given number of degrees. |
image_resize |
drupal/ |
Resizes an image to the given dimensions (ignoring aspect ratio). |
image_load |
drupal/ |
Loads an image file and returns an image object. |
image_get_toolkit |
drupal/ |
Gets the name of the currently used toolkit. |
image_get_info |
drupal/ |
Gets details about an image. |
image_get_available_toolkits |
drupal/ |
Gets a list of available toolkits. |
image_gd_settings |
drupal/ |
Image toolkit callback: Returns GD-specific image toolkit settings. |
image_gd_save |
drupal/ |
Image toolkit callback: Writes an image resource to a destination file. |
image_gd_rotate |
drupal/ |
Image toolkit callback: Rotates an image a specified number of degrees. |
image_gd_resize |
drupal/ |
Image toolkit callback: Scales an image to the specified size using GD. |
image_gd_load |
drupal/ |
Image toolkit callback: Creates a GD image resource from a file. |
image_gd_get_info |
drupal/ |
Get details about an image. Image toolkit callback: Retrieves details about an image. |
image_gd_desaturate |
drupal/ |
Image toolkit callback: Converts an image to grayscale using the GD toolkit. |
image_gd_crop |
drupal/ |
Image toolkit callback: Crops an image using the GD toolkit. |
image_gd_create_tmp |
drupal/ |
Creates a truecolor image preserving transparency from a provided image. |
image_gd_check_settings |
drupal/ |
Verifies GD2 settings (that the right version is actually installed). |
image_dimensions_scale |
drupal/ |
Scales image dimensions while maintaining aspect ratio. |
image_desaturate |
drupal/ |
Converts an image to grayscale. |
image_crop |
drupal/ |
Crops an image to a rectangle specified by the given dimensions. |