Страница 1 из 1

Imagick

Добавлено: 27 июн 2019, 12:37
Sergey1986
Добрый день!
Подскажите как запустить Imagick в open server 5 3 3

в php
new \Imagick() не работает((((

настройка Apache 2.4-PHP_7.0-7.1-x64
PHP_7.0-7.1-x64

Что не обходимо сделать что бы заработало???

Re: Imagick

Добавлено: 27 июн 2019, 12:45
Sergey1986
пишет Uncaught Error: Class 'Imagick' not found in

Re: Imagick

Добавлено: 27 июн 2019, 21:53
DigitalWolf98
Sergey1986 писал(а): 27 июн 2019, 12:45 пишет Uncaught Error: Class 'Imagick' not found in
Для работы с ImageMagic установите опцию "php_imagick.dll",
для того чтобы ее установить запустите OpenServer зайдите в меню -> дополнительно -> конфигурация -> php_**** откроется та версия php которую вы используете в данный момент и в этом файле найдите блок с опциями "extension" и в самом верху этих опций запишите следующее: extension=php_imagick.dll далее перезапустите OpenServer и используйте:
<?php
/* Чтение изображения */
$im = new Imagick("test.png");

/* Миниатюра изображения */
$im->thumbnailImage(200, null);

/* Создание рамки для изображения */
$im->borderImage(new ImagickPixel("white"), 5, 5);

/* Клонируем изображение и зеркально поворачиваем его */
$reflection = $im->clone();
$reflection->flipImage();

/* Создаём градиент. Это будет наложением для отражения */
$gradient = new Imagick();

/* Градиент должен быть достаточно большой для изображения и его рамки */
$gradient->newPseudoImage($reflection->getImageWidth() + 10, $reflection->getImageHeight() + 10, "gradient:transparent-black");

/* Наложение градиента на отражение */
$reflection->compositeImage($gradient, imagick::COMPOSITE_OVER, 0, 0);

/* Добавляем прозрачность. Требуется ImageMagick 6.2.9 или выше */
$reflection->setImageOpacity( 0.3 );

/* Создаём пустой холст */
$canvas = new Imagick();

/* Холст должен быть достаточно большой, чтобы вместить оба изображения */
$width = $im->getImageWidth() + 40;
$height = ($im->getImageHeight() * 2) + 30;
$canvas->newImage($width, $height, new ImagickPixel("black"));
$canvas->setImageFormat("png");

/* Наложение оригинального изображения и отражения на холст */
$canvas->compositeImage($im, imagick::COMPOSITE_OVER, 20, 10);
$canvas->compositeImage($reflection, imagick::COMPOSITE_OVER, 20, $im->getImageHeight() + 10);

/* Вывод изображения */
header("Content-Type: image/png");
echo $canvas;
?>