Image toolkits

Same name in other branches
  1. 9 core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php \Drupal\Core\ImageToolkit\image
  2. 8.9.x core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php \Drupal\Core\ImageToolkit\image
  3. 10 core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php \Drupal\Core\ImageToolkit\image
  4. 11.x core/lib/Drupal/Core/ImageToolkit/ImageToolkitInterface.php \Drupal\Core\ImageToolkit\image

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.

File

includes/image.inc, line 8

Functions

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

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.