예제 #1
0
 /**
  * Process image data
  *
  * @param Product $product
  * @param array $imageData
  * @param string $file
  * @return $this
  * @SuppressWarnings(PHPMD.CyclomaticComplexity)
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 protected function processImageData(Product $product, array $imageData, $file)
 {
     $this->imageHelper->init($product, $imageData['id'], $imageData);
     $this->imageHelper->setImageFile($file);
     if (isset($imageData['aspect_ratio'])) {
         $this->imageHelper->keepAspectRatio($imageData['aspect_ratio']);
     }
     if (isset($imageData['frame'])) {
         $this->imageHelper->keepFrame($imageData['frame']);
     }
     if (isset($imageData['transparency'])) {
         $this->imageHelper->keepTransparency($imageData['transparency']);
     }
     if (isset($imageData['constrain'])) {
         $this->imageHelper->constrainOnly($imageData['constrain']);
     }
     if (isset($imageData['background'])) {
         $this->imageHelper->backgroundColor($imageData['background']);
     }
     $this->imageHelper->save();
     return $this;
 }