/** * Resizes the image and stores the results into container[IMAGE_CONTAINER_DATA] * * * @param $container * @param $options * @param $errors * @return mixed */ public static function resize($container, $options, &$errors) { if ($container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE] == null) { $container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE] = self::getImageSize($container[XApp_Image_Utils::IMAGE_CONTAINER_SRC]); } $currentSize = $container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE]; $newSize = XApp_Image_Utils::calcImageSize($currentSize, $options); $new_img_data = imagecreatetruecolor($newSize->width, $newSize->height); imagecopyresampled($new_img_data, $container[XApp_Image_Utils::IMAGE_CONTAINER_DATA], 0, 0, 0, 0, $newSize->width, $newSize->height, $currentSize->width, $currentSize->height); $container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE] = $newSize; $container[XApp_Image_Utils::IMAGE_CONTAINER_DATA] = $new_img_data; return $container; }
/** * Resizes the image and stores the results into container[IMAGE_CONTAINER_DATA] * * * @param $container * @param $options * @param $errors * @return mixed */ public static function resize($container, $options, &$errors) { if ($container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE] == null) { $container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE] = self::getImageSize($container[XApp_Image_Utils::IMAGE_CONTAINER_SRC]); } $currentSize = $container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE]; $newSize = XApp_Image_Utils::calcImageSize($currentSize, $options); try { $container[XApp_Image_Utils::IMAGE_CONTAINER_DATA]->scaleImage($newSize->width, $newSize->height); } catch (Exception $e) { $errors[] = $e->getMessage(); } $container[XApp_Image_Utils::IMAGE_CONTAINER_SIZE] = $newSize; return $container; }
public function resize($src, $width = null, $save = true, $cache = true, $height = null, $preventCache = false, $icon = false, $forceHandler = '') { error_log('resize : ' . $src); XApp_Image_Utils::$cacheDir = xo_get(self::IMAGE_CACHE_DIR, $this); $errors = array(); if ($icon) { $operation = XApp_Image_Utils::OPERATION_ICONIFY; } else { $operation = XApp_Image_Utils::OPERATION_RESIZE; } $jobs = ' [ { "' . XApp_Image_Utils::IMAGE_OPERATION . '" : "' . $operation . '", "' . XApp_Image_Utils::OPERATION_OPTIONS . '" : { "' . XApp_Image_Utils::OPTION_WIDTH . '" : "' . $width . '", "' . XApp_Image_Utils::OPTION_HEIGHT . '" : "' . $height . '", "' . XApp_Image_Utils::OPTION_PREVENT_CACHE . '" : "' . $preventCache . '", "' . XApp_Image_Utils::OPTION_FORCE_IMAGE_HANDLER . '" : "' . $forceHandler . '" } } ] '; XApp_Image_Utils::execute($src, "", $jobs, $errors, $save, $cache); }