На лету миниатюра / изменение размера генерации изображений

Возможный дубликат:
Изменение размера изображения на лету против хранения измененных изображений

Мне было интересно, что является лучшим, быстрым и наиболее эффективным способом изменения размера изображений на лету? У меня есть идея генерировать миниатюры и изображения специальных размеров из фотогалереи на лету, когда они запрашиваются.

Это хорошая идея? и как лучше?

PHP, Imagemagick, сервер Litespeed

3 ответа

Решение

Я успешно создал приложение для рефакторинга изображений на лету, используя Imagemagick. Производительность отличная, и я могу изменить размер / обрезать / водяные знаки / переформатировать и т. Д. Все через спокойный запрос. Я использую memcache для кэширования двоичного двоичного объекта из рефакторизованного изображения, и это дает мне огромный прирост производительности.

РЕДАКТИРОВАТЬ: я первоначально использовал библиотеки Java Imagemagick и продолжал сталкиваться с проблемами, библиотеки PHP гораздо лучше imho (это было около года назад, возможно, что библиотеки Java улучшились)

Я бы рекомендовал НЕ создавать миниатюры на лету или, по крайней мере, кэшировать их (например, сохраняя в HD). Вы можете сгенерировать их, например, с помощью phpThumb: http://phpthumb.sourceforge.net/ который использует GD или ImageMagick.

Надеюсь, это поможет.

Я не знаком со многими опциями, но, насколько мне известно, я бы выбрал ImageMagick, он выполняется довольно быстро при выполнении командной строки. Обновления ImageMagick и обратная совместимость могут быть причиной непредвиденных ошибок. При создании большого количества изображений на лету может быть целесообразно выполнить перелистывание на другом / выделенном сервере. И обязательно кешируй их.

Другие вопросы по тегам