1. drupal
    1. 8
    2. 7
7 – 8 hook_image_default_styles()

Provide module-based image styles for reuse throughout Drupal.

This hook allows your module to provide image styles. This may be useful if you require images to fit within exact dimensions. Note that you should attempt to re-use the default styles provided by Image module whenever possible, rather than creating image styles that are specific to your module. Image provides the styles "thumbnail", "medium", and "large".

You may use this hook to more easily manage your site's changes by moving existing image styles from the database to a custom module. Note however that moving image styles to code instead storing them in the database has a negligible effect on performance, since custom image styles are loaded from the database all at once. Even if all styles are pulled from modules, Image module will still perform the same queries to check the database for any custom styles.

Return value

An array of image styles, keyed by the style name.

See also


Related topics


modules/image/image.api.php, line 170

function hook_image_default_styles() {
  $styles = array();

  $styles['mymodule_preview'] = array(
    'effects' => array(
        'name' => 'image_scale', 
        'data' => array(
          'width' => 400,
          'height' => 400,
          'upscale' => 1,
        'weight' => 0,
        'name' => 'image_desaturate', 
        'data' => array(), 
        'weight' => 1,

  return $styles;