private function setSizesIfOneOfDimensionIsntSet(Node $node, Document $document)
 {
     if ($this->isImageAndSizesArentSet($node)) {
         $width = $node->getWidth();
         $height = $node->getHeight();
         $source = $node->createSource($document);
         $originalWidth = $source->getOriginalWidth();
         $originalHeight = $source->getOriginalHeight();
         $originalRatio = $originalHeight ? $originalWidth / $originalHeight : 0;
         if (!$width && !$height) {
             list($width, $height) = $this->setDimensionsFromParent($source, $node);
         }
         list($width, $height) = Util::calculateDependantSizes($width, $height, $originalRatio);
         $node->setWidth($width);
         $node->setHeight($height);
     }
 }
Пример #2
0
 private function getImageDimension(UnitConverter $converter, $image, Node $node)
 {
     $width = $converter->convertUnit($this->imageWidth);
     $height = $converter->convertUnit($this->imageHeight);
     if (!$width && !$height) {
         return array($image->getOriginalWidth(), $image->getOriginalHeight());
     }
     list($width, $height) = $this->convertPercentageDimension($converter, $node, $width, $height);
     $ratio = $image->getOriginalWidth() / $image->getOriginalHeight();
     list($width, $height) = Util::calculateDependantSizes($width, $height, $ratio);
     return array($width, $height);
 }