Beispiel #1
0
 /**
  * @param PresetInterface $presetObject
  * @param array $presetParameters
  */
 protected function setParameters(PresetInterface $presetObject, array $presetParameters)
 {
     foreach ($presetParameters as $parameter) {
         $parameterParts = explode('=', $parameter);
         $parameterName = $parameterParts[0];
         $parameterValue = array_key_exists(1, $parameterParts) ? $parameterParts[1] : null;
         switch ($parameterName) {
             case 'quality':
                 if ($parameterValue === null) {
                     throw new InvalidPresetException('Quality value "' . $parameterValue . '" is incorrect.');
                 }
                 $presetObject->setQuality(intval($parameterValue));
                 break;
             default:
                 throw new InvalidPresetException('Parameter "' . $parameterName . '" is incorrect.');
         }
     }
 }
Beispiel #2
0
 /**
  * @param ImageInterface $image
  * @param PresetInterface $preset
  *
  * @return ImageInterface
  */
 protected function createImageThumbnail(ImageInterface $image, PresetInterface $preset)
 {
     $width = $preset->getWidth();
     if ($width === 0) {
         $width = PHP_INT_MAX;
     }
     $height = $preset->getHeight();
     if ($height === 0) {
         $height = PHP_INT_MAX;
     }
     $image = $image->thumbnail(new Box($width, $height), $preset->isFit() ? ImageInterface::THUMBNAIL_INSET : ImageInterface::THUMBNAIL_OUTBOUND);
     return $image;
 }