Exemplo n.º 1
0
 /**
  * Resizes the image maintaining the proportion (A 800x600 image resized to 400x400 becomes to 400x300)
  *
  * @param integer|string $width   The max width of the image. It can be a number (pixels) or percentaje
  * @param integer|string $height  The max height of the image. It can be a number (pixels) or percentaje
  * @param boolean|null   $enlarge
  * @param boolean        $cover
  *
  * @return self
  */
 public function resize($width, $height = 0, $enlarge = false, $cover = false)
 {
     $imageWidth = $this->getWidth();
     $imageHeight = $this->getHeight();
     $width = Dimmensions::getIntegerValue($width, $imageWidth);
     $height = Dimmensions::getIntegerValue($height, $imageHeight);
     list($width, $height) = Dimmensions::getResizeDimmensions($imageWidth, $imageHeight, $width, $height, $cover);
     if ($width === $imageWidth || !$enlarge && $width > $imageWidth) {
         return $this;
     }
     $this->image->resize($width, $height);
     return $this;
 }
Exemplo n.º 2
0
 /**
  * @dataProvider resizeDataProvider
  */
 public function testResize($imageWidth, $imageHeight, $newWidth, $newHeight, $cover, $expectedWidth, $expectedHeight)
 {
     list($width, $height) = Dimmensions::getResizeDimmensions($imageWidth, $imageHeight, $newWidth, $newHeight, $cover);
     $this->assertSame($expectedWidth, $width);
     $this->assertSame($expectedHeight, $height);
 }