gnu-social/vendor/intervention/image/src/Intervention/Image/Gd/Commands/FlipCommand.php

38 lines
930 B
PHP

<?php
namespace Intervention\Image\Gd\Commands;
class FlipCommand extends ResizeCommand
{
/**
* Mirrors an image
*
* @param \Intervention\Image\Image $image
* @return boolean
*/
public function execute($image)
{
$mode = $this->argument(0)->value('h');
$size = $image->getSize();
$dst = clone $size;
switch (strtolower($mode)) {
case 2:
case 'v':
case 'vert':
case 'vertical':
$size->pivot->y = $size->height - 1;
$size->height = $size->height * (-1);
break;
default:
$size->pivot->x = $size->width - 1;
$size->width = $size->width * (-1);
break;
}
return $this->modify($image, 0, 0, $size->pivot->x, $size->pivot->y, $dst->width, $dst->height, $size->width, $size->height);
}
}