You are here

function smartcrop_scale_effect in Smart Crop 7

Image effect callback; Scale and Smart Crop an image resource.

Parameters

$image: An image object returned by image_load().

$data: An array of attributes to use when performing the scale effect with the following items:

  • "width": An integer representing the desired width in pixels.
  • "height": An integer representing the desired height in pixels.
  • "upscale": A Boolean indicating that the image should be upscalled if the dimensions are larger than the original image.

Return value

TRUE on success. FALSE on failure to scale image.

1 string reference to 'smartcrop_scale_effect'
smartcrop_image_effect_info in ./smartcrop.effects.inc
Implements hook_image_effect_info().

File

./smartcrop.effects.inc, line 47
Functions needed to execute image effects provided by the SmartCrop module.

Code

function smartcrop_scale_effect(&$image, $data) {

  // Set sane default values.
  $data += array(
    'upscale' => FALSE,
  );

  // Set impossibly large values if the width and height aren't set.
  $data['width'] = empty($data['width']) ? PHP_INT_MAX : $data['width'];
  $data['height'] = empty($data['height']) ? PHP_INT_MAX : $data['height'];
  if (!image_toolkit_invoke('smartcrop_scale', $image, $data)) {
    watchdog('image', 'Image scale failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array(
      '%toolkit' => $image->toolkit,
      '%path' => $image->source,
      '%mimetype' => $image->info['mime_type'],
      '%dimensions' => $image->info['height'] . 'x' . $image->info['height'],
    ), WATCHDOG_ERROR);
    return FALSE;
  }
  return TRUE;
}