| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Превью фотографии. Как лучше реализовать? |
| Автор: luser78 21.2.2010, 07:55 |
| Превью фотографии. Как лучше реализовать? На сервере лежат фотографии разного размера, необходимо отображать их превью в уменьшенном виде. Как это реализовать лучше? Нужно ли создавать для каждой фото уменьшенное фото? |
| Автор: skyboy 21.2.2010, 09:16 |
| между генерацией каждый раз на лету и генерацией один раз с сохранением на диск надо выбирать второй вариант. между использованием GD и ImageMagick лучше использовать второй вариант. Если позволяет хостинг. также надо убедиться, что после смены "основной картинки"(если используемый код позволяет заменить картинку), превью будет пересоздано, а клиент получит новую версию, а не закешированную. между вариантом "за один проход создать и сохранить превью для всех картинок" и "при первом запросе отсутствующей превью, оно создается и записывается на диск" можно выбрать любой вариант. хотя, если картинок много и нагрузка большая, лучше первый, потому что при индексации поисковиком второй вариант выродится практически в первый, только это может произойти в любой момент. |
| Автор: MoLeX 21.2.2010, 09:16 |
конечно |
| Автор: IgorIV 21.2.2010, 12:02 | ||
| Date, сравнивал gd, imagick, gmagick и программы. Как раз для создания превью. По скорости все одинаковы, +-%. По памяти gd проигрывает. Потому как является расширением PHP. В случае imagick gmagick обработкой занимаются сторонние программы. Результаты прилагаются. Кстати,
есть и третий вариант, создавать превью в момент загрузки. Ведь, по-крайней мере, одну из этих превью нужно показать сейчас же. |
| Автор: skyboy 21.2.2010, 19:49 |
да, конечно, только если еще не имеется полторы сотни уже загруженных картинок без превью. ага. и без коррекции php.ini на предмет memory_limit у меня на 16Мб отказывается ресайзить уже 2000х2000: вылетает по нехватке памяти. а каждому не объяснишь необходимость ресайзить фото с 6-мегапиксельного фотоаппарата перед загрузкой. а вот в imagemagick есть даже ключ, ограничивающий сверху объем используемой для конвертирования памяти. |
| Автор: IgorIV 21.2.2010, 20:15 | ||
Поэтому надо осваивать направление в сторону программ-загрузчиков. Я особо не вдавался в подробности, но почти каждый второй фотосервис имеет такое. http://www.radikal.ru/FOTODESKTOP/fc_about.aspx |
| Автор: sTa1kEr 22.2.2010, 14:02 | ||
| В некоторых случаях есть смысл свалить всю работу по ресайзингу на великий и могучий nginx http://habrahabr.ru/blogs/nginx/77873/ Добавлено через 1 минуту и 44 секунды
Я думаю, для не фотосервисов подойдет и upload_limit |