protected function Autorotate::process in Imagick 8
File
- src/Plugin/ImageToolkit/Operation/imagick/Autorotate.php, line 31
Class
- Autorotate
- Defines imagick autorotate operation.
Namespace
Drupal\imagick\Plugin\ImageToolkit\Operation\imagick
Code
protected function process(Imagick $resource, array $arguments) {
$orientation = $resource
->getImageOrientation();
switch ($orientation) {
case Imagick::ORIENTATION_BOTTOMRIGHT:
case Imagick::ORIENTATION_BOTTOMLEFT:
$resource
->rotateimage(new ImagickPixel(), 180);
break;
case Imagick::ORIENTATION_RIGHTTOP:
case Imagick::ORIENTATION_LEFTTOP:
$resource
->rotateimage(new ImagickPixel(), 90);
break;
case Imagick::ORIENTATION_LEFTBOTTOM:
case Imagick::ORIENTATION_RIGHTBOTTOM:
$resource
->rotateimage(new ImagickPixel(), -90);
break;
}
if (in_array($orientation, [
Imagick::ORIENTATION_TOPRIGHT,
Imagick::ORIENTATION_BOTTOMLEFT,
Imagick::ORIENTATION_LEFTTOP,
Imagick::ORIENTATION_RIGHTBOTTOM,
])) {
$resource
->flopImage();
}
return $resource
->setImageOrientation(Imagick::ORIENTATION_TOPLEFT);
}