44 lines
1.3 KiB
PHP
44 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Shikiryu\WebGobbler\Assembler;
|
|
|
|
use Shikiryu\WebGobbler\Assembler;
|
|
|
|
class Simple extends Assembler
|
|
{
|
|
/**
|
|
* @param string $file
|
|
*/
|
|
public function saveTo($file)
|
|
{
|
|
try {
|
|
$image = new \Imagick($this->pool->getImage());
|
|
if ($image->getColorspace() !== \Imagick::COLORSPACE_RGB) {
|
|
$image->setColorspace(\Imagick::COLORSPACE_RGB);
|
|
}
|
|
$size = $image->getSize();
|
|
$imagex = $size['columns'];
|
|
$imagey = $size['rows'];
|
|
if ($imagex !== $this->config->get('assembler.sizex') || $imagey !== $this->config->get('assembler.sizey')) {
|
|
$image->thumbnailImage($this->config->get('assembler.sizex'), $this->config->get('assembler.sizey'));
|
|
}
|
|
if (true === $this->config->get('assembler.mirror')) {
|
|
$image->flopImage();
|
|
}
|
|
if (true === $this->config->get('assembler.emboss')) {
|
|
$image->embossImage(0, 1);
|
|
}
|
|
if (true === $this->config->get('assembler.invert')) {
|
|
$image->flipImage();
|
|
}
|
|
$image->writeImage($file);
|
|
} catch (\ImagickException $e) {
|
|
echo $e->getMessage();
|
|
}
|
|
}
|
|
|
|
public function display()
|
|
{
|
|
// TODO: Implement display() method.
|
|
}
|
|
} |