Imagick

Вопросы по работе с Apache, Nginx, PHP, MySQL, Sendmail и т.д.
Sergey1986
Сообщения: 2
Зарегистрирован:
27 июн 2019, 12:32

Imagick

Sergey1986 » 27 июн 2019, 12:37

Добрый день!
Подскажите как запустить Imagick в open server 5 3 3

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

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

Что не обходимо сделать что бы заработало???
Sergey1986
Сообщения: 2
Зарегистрирован:
27 июн 2019, 12:32

Re: Imagick

Sergey1986 » 27 июн 2019, 12:45

пишет Uncaught Error: Class 'Imagick' not found in
DigitalWolf98
Сообщения: 9
Зарегистрирован:
06 мар 2019, 01:29

Re: Imagick

DigitalWolf98 » 27 июн 2019, 21:53

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;
?>
Ответить