(PECL imagick 2, PECL imagick 3)
Imagick::setOption — Устанавливает опцию
Метод связывает опции с палочкой.
key
value
Функция в случае успешной работы возвращает true
.
Пример #1 Пример попытки достичь размера '$extent' методом Imagick::setOption()
<?php
function renderJPG($extent)
{
$imagePath = $this->control->getImagePath();
$imagick = new \Imagick(realpath($imagePath));
$imagick->setImageFormat('jpg');
$imagick->setOption('jpeg:extent', $extent);
header("Content-Type: image/jpg");
echo $imagick->getImageBlob();
}
?>
Пример #2 Пример работы метода Imagick::setOption()
<?php
function renderPNG($imagePath, $format)
{
$imagick = new \Imagick(realpath($imagePath));
$imagick->setImageFormat('png');
$imagick->setOption('png:format', $format);
header("Content-Type: image/png");
echo $imagick->getImageBlob();
}
// Сохраняем как 64-битное PNG-изображение
renderPNG($imagePath, 'png64');
?>
Пример #3 Пример работы метода Imagick::setOption()
<?php
function renderCustomBitDepthPNG()
{
$imagePath = $this->control->getImagePath();
$imagick = new \Imagick(realpath($imagePath));
$imagick->setImageFormat('png');
$imagick->setOption('png:bit-depth', '16');
$imagick->setOption('png:color-type', 6);
header("Content-Type: image/png");
$crash = true;
if ($crash) {
echo $imagick->getImageBlob();
} else {
$tempFilename = tempnam('./', 'imagick');
$imagick->writeimage(realpath($tempFilename));
echo file_get_contents($tempFilename);
}
}
?>