Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Программное уменьшения размера и качества изображения.
----- Программист, это - такой человек, который сначала много думает, чтобы потом ничего не делать!
cHameleon
Отправлено: 15 Сентября, 2010 - 19:44:38
Гость
Покинул форум
Сообщений всего: 107
Дата рег-ции: Янв. 2010
Помог: 0 раз(а)
когда я впервые писал галерейку, я использовал подобный метод) каждый раз картинки ресайзились по новой. бедный сервер, он наверное меня материл. а еще я забыл сделать ограничение по разрешению картинок и один раз в галерею загрузили картинку 16к на 16к. ресайзилась картинка в 100на100
с тех пор я стараюсь учесть все ньюансы, а этот метод больше не использую (тут как говорится, дело вкуса)
bt_corp пишет:
maxw = 300 это максимальное расширение изображения в px в которое оно скомпилюеться.
наверное имелось ввиду разрешение
----- берём notepad++ и творим пэхэпэ-мир
volkodav
Отправлено: 15 Сентября, 2010 - 19:50:50
Новичок
Покинул форум
Сообщений всего: 1
Дата рег-ции: Сент. 2010
Помог: 0 раз(а)
Мне надо) cHameleon А какой метод ты используешь?
Uchkuma
Отправлено: 15 Сентября, 2010 - 20:21:26
Участник
Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010 Откуда: Киров
Помог: 6 раз(а)
cHameleon пишет:
наверное имелось ввиду разрешение
Ну вообще-то просто размер. У картинки, отображаемой на мониторе не может быть разрешения, ибо разрешение - это количество точек на единицу длины.
volkodav пишет:
Мне надо) cHameleon А какой метод ты используешь?
Чтобы картинки не ресайзились каждый раз их можно кешировать. Т.е. сохранять на диск их уменьшенную копию.
JustUserR
Отправлено: 16 Сентября, 2010 - 15:29:06
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
bt_corp пишет:
И так я долго искал способ уменьшить размер изображения не клонируя его и не сохраняя на сервере.
Созданный вами PHP-скрипт для генерации уменьшеньшенной копии изображений по первичному запросу в его текущей реализации является небезопасным для сервера - дело в том что путем автоматической отправки массового числа запросов на одно и то же изображения можно призвести атаку типа отказ от доступа из-за перенагрузки - в то время как наличие кеширования и сохранение копии файла уменьшенного изображения на диск существенно уменьшает эту возможность
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
bt_corp
Отправлено: 16 Сентября, 2010 - 17:49:33
Гость
Покинул форум
Сообщений всего: 71
Дата рег-ции: Май 2010
Помог: 0 раз(а)
JustUserR если вам не трудно то реализуйте кэширования уменьшенных копий на сервер. Я не знаю как это сделать
----- Программист, это - такой человек, который сначала много думает, чтобы потом ничего не делать!
JustUserR
Отправлено: 17 Сентября, 2010 - 13:13:40
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
bt_corp пишет:
JustUserR если вам не трудно то реализуйте кэширования уменьшенных копий на сервер. Я не знаю как это сделать
Реализация кеширования для системы генерации уменьшенных копий изображений зависит от структуры согласно которой происходит обращение к исходным файлам - в частности это может быть уникальный номер изображения в БД или файловый путь который соответствует виртуальному web-пути без alias-ов и действенных перенаправлений В таком случае PHP-скрипт работает следующим образом - он получвает определенный идентификатор исходного изображения и преобразует его согласно выбранным правилам - после чего проверяет наличие аналогичного имени в папке с кешированными изображениями - и в зависимости от его существования выполняет генерацию нового изображения или показ старого Кроме того желательно организовать дополнитльную проверку такого аттрибута файла исходного изображения как время его последней модификации - в таком случае можно определить что оно изменилось и необходимо произвести генерацию новой миниатюры
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.