@Yadalay
Php, Mysql, Html, Css, Js/Jquery/Ajax, Laravel

Как заставить работать Imagick, ImagickDraw и т.п. в Laravel?

Здравствуйте!
Подскажите, пожалуйста, как работать с этими классами в Laravel?
use Imagick и т.п. не помогает. Всё равно пишет, что такой класс не найден.
Кусок кода:
$draw = new ImagickDraw();

$strokeColor = new ImagickPixel('rgb(0, 0, 0)');
$fillColor = new ImagickPixel('DodgerBlue2');

$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);

$draw->setStrokeWidth(2);
$draw->setFontSize(72);

$draw->circle(50, 50, 100, 100);

$imagick = new Imagick();
$imagick->newImage(500, 500, new ImagickPixel('transparent'));
$imagick->setImageFormat("png");
$imagick->drawImage($draw);

header("Content-Type: image/png");
echo $imagick->getImageBlob();

Выше в этом контроллере:
use Imagick;
use ImagickDraw;
use ImagickPixel;
  • Вопрос задан
  • 2578 просмотров
Пригласить эксперта
Ответы на вопрос 2
Sanasol
@Sanasol Куратор тега Laravel
нельзя просто так взять и загуглить ошибку
apt-get install php5-gd

Это ставить отдельно надоиз pecl.
php.net/manual/en/imagick.installation.php
Ответ написан
Jakim
@Jakim
Laravel - developer
use Imagick;
use ImagickDraw;
use ImagickPixel;

Это вообще бред
1) phpinfo(); смотрим там пункт Imagick
Если нету смотрим в php.ini строку extension=php_imagick.dll если нету допишите в конец списка всех extension (их там много не ошибетесь)
2) Если ошибка при старте сервака (смотреть в логах) что нету .dll библиотеки, то выкачиваем отсюда библиотеку dll файла там выбираем ту версию php какой пользуетесь и ту разрядность, опять же ее можно увидеть в phpinfo();
3) В скачанном архиве ищем php_imagick.dll и кладем его в папку php/PHP-ВАША_ВЕРСИЯ/ext
ПЕРЕЗАПУСКАЕТЕ СЕРВАК!!!
если после этого будут проблемы и ошибки пишите в комментарии, разберемся
И укажите какой сервер у вас, название программы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы