[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: не работает ImageMagick
lara_


Добрый день.
Есть интернет-магазин,на кот изображения товаров должны быть масштабированы и с водяным знаком.
Для этого используется библиотека ImageMagick. На денвере ImageMagick установлен и все работает корректно.
На сервере библиотека ImageMagick не была установлена. По просьбе ее установили, но скрипт обработки картинок не работает.
При вызове phpinfo() никакой информации об ImageMagick не выводится. Хотя скрипт использовался уже не раз (сайты на другом хостинге) и все без проблем. При вызове phpinfo() на таких сайтах и на денвере выводит информацию о библиотеке.

Тех.поддержка ответила:
imagemagic в phpinfo не отображается, это библиотека не php, а отдельная .
По поводу сайта, в коде должен быть путь к ImageMagick /usr/bin/convert

Раньше никакие пути не нужно было прописывать, поэтому я даже не знаю, где это нужно прописать.
Нашла функции, с помощью кот можно определить установлена ли на сервере ImageMagick или нет:
1)
exec('convert -size 60x60 xc:red square.gif');

функция ничего не выводит
2)
echo shell_exec("rpm -q ImageMagick"); 

на сервере вывело ImageMagick-6.5.4.7-6.el6_2.i686

Я так поняла, что библиотека установлена и к ней, действительно, нужно прописать путь.
Нашла
$exstr='/usr/bin/convert ' . $path. ' -resize x200 ' . $path1;
shell_exec($exstr);

где $path — полный путь к временному файлу на диске
$path1 – путь для сохранения уменьшенного изображения
/usr/bin/convert — путь к конвертеру для ImageMagick,
‘-resize x200’ — сжимаем до 200 пикс. по высоте

Просто в моем скрипте используются другие функции для масштабирования картинок, поэтому как и где прописать путь вопрос.

Если кто-то сталкивался с подобной проблемой - буду рада помощи.
Спасибо.

[php]
OleKh
Тоже ещё не пользовался этим расширением. В мануале есть много информации.

http://php.net/manual/en/book.imagick.php

Цитата
That's it, a simple test will tell you if your installation was successful.


$im = new Imagick();
$im->newPseudoImage(100, 100, "magick:rose");
$im->setImageFormat("png");
$im->roundCorners(5,3);
$type=$im->getFormat();
header("Content-type: $type");
echo $im->getimageblob();


Цитата
Imagick makes image manipulation in PHP extremely easy through an OO interface. Here is a quick example on how to make a thumbnail:
OleKh
Цитата (lara_ @ 31.10.2013 - 16:46)
Я так поняла, что библиотека установлена и к ней, действительно, нужно прописать путь.
Ничего не нужно устанавливать, если расширение подключено просто используйте его.

$image = new Imagick('image.jpg');

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.