Выбор между Imagemagick и GD для создания миниатюр - PullRequest
2 голосов
/ 28 марта 2012

Я собираюсь написать функцию для создания эскизов.
Я могу использовать оба метода Imagemagick и GD Library.
Какой метод создает лучшие эскизы и быстрее и лучше для сервера (загрузка, ...)?

Спасибо

Ответы [ 3 ]

2 голосов
/ 29 июня 2013

GraphicsMagick

После того, как попробовал оба и обнаружил, что ImageMagick был лучше, но в конце я выбрал ни один и выбрал GraphicsMagick вместо.взято из ImageMagick 5.5.2 по состоянию на ноябрь 2002 года, но с тех пор полностью независим от проекта ImageMagick.Начиная с форка от ImageMagick многие авторы сделали много улучшений (см. НОВОСТИ), использующих открытую модель разработки, но без нарушения работы API или утилит.

  • GM более эффективен, поэтому он выполняет свою работубыстрее, используя меньше ресурсов.
  • GM намного меньше и компактнее (размер установки меньше в 3-5 раз).
  • GM используется для обработки миллиардов файлов на крупнейших фото-сайтах мира (например, Flickr иEtsy).
  • GM не конфликтует с другим установленным программным обеспечением.
  • У GM меньше проблем с безопасностью и эксплойтов.
  • GM valgrind на 100% чист (memcheck и helgrind).

Также ..

2 голосов
/ 29 марта 2012

Исходя из моего опыта, я думаю, что ImageMagick обеспечивает лучшее качество. Также известно, что ImageMagick работает быстрее, особенно если вы используете его через командную строку (или PHP exec ("convert ...") (см., Например, этот тест )

О качестве, я нашел это в SO: Как остановить GD2 от размывания цветов при изменении размеров изображений?

1 голос
/ 29 марта 2012
$im = imagecreatefromjpeg('photo.jpg');

$ox = imagesx($im);
$oy = imagesy($im); 

$nx = 320;
$ny = 240;

$nm = imagecreatetruecolor($nx, $ny); 

imagecopyresized($nm,$im,0,0,0,0,$nx,$ny,$ox,$oy); 

imagejpeg($nm, 't_photo.jpg');

VS

exec('convert photo.jpg -resize 320x240 t_photo.jpg');

Что вы думаете?

Также каждый хороший эскиз должен быть немного обострен ...

exec('convert photo.jpg -resize 320x240 -unsharp 1.5×1.0+1.5+0.02 t_photo.jpg');

http://net.tutsplus.com/tutorials/php/create-instagram-filters-with-php/

...