Zero108 124 09/14/2009 08:11 AM (edited) Когда форум масштабирует прицепленные к посту изображения, он создает превью заданного в админке размера (длина и высота). А где настраивается качество сжатия для превью. Такое ощущение, что разработчики поставили качество jpg на выходе процентов 65 от оригинала, так как все превью в артефактах, аж глаз режет. В каком файле подправить качество сжатия jpg, чтобы стояло 100%? Edited September 14, 2009 by Zero108 Share this post Link to post
Ph-A 395 09/14/2009 12:46 PM В каком файле подправить качество сжатия jpg, чтобы стояло 100%?\ips_kernel\class_image.phpИщем @imagejpeg( $thumb, $this->out_file_dir."/".$this->out_file_name.'.jpg' ); Меняем на @imagejpeg( $thumb, $this->out_file_dir."/".$this->out_file_name.'.jpg', 100);И получаем слонов. :) 100% не стоит. В галереи такая же история. Значение по умолчанию, кошмарное. Share this post Link to post
Zero108 124 09/14/2009 06:21 PM Вообще, подумалось, что многие разработчики таких вот форумов все еще живут во временах диалапных модемов, когда вес страницы и отдельного изображения был очень критичным параметром. Оттуда выросла привычка оптимизировать ВСЁ, что только можно... Share this post Link to post
Ph-A 395 09/15/2009 05:37 AM Вообще, подумалось, что многие разработчики таких вот форумов все еще живут во временах диалапных модемов, когда вес страницы и отдельного изображения был очень критичным параметром.Этот кусок кода, без изменения присутствовал еще на 2.1 А возможно он был и на 2.0 С тех пор, так все и тянется. А грубо, IP.Board не приспособлен для работы с изображениями. У них нет не грамотного постановщика заданий, не исполнителей под графику. Из-за этого галерея, такая как есть. Share this post Link to post
Zero108 124 01/08/2010 11:42 PM В галереи такая же история. Значение по умолчанию, кошмарное. Поставил галерею 2.2.4. Изменил в файле sources/components_public/gallery/lib/lib_image.php if( $this->file_extension == 'gif' ) { $this->out_file_complete = preg_replace( "/(.gif)$/i", ".jpg", $this->out_file_complete); } на if( $this->file_extension == 'gif' ) { $this->out_file_complete = preg_replace( "/(.gif)$/i", ".jpg", $this->out_file_complete, 100); } Не помогло. Где менять? Кстати, пробовал запустить в галерее функцию добавления водяного знака. Прописал абсолютный путь, но ничего к изображению не добавилось. Это вообще работает?! Share this post Link to post
Ph-A 395 01/09/2010 09:21 PM Где менять?ИМХО но \ips_kernel\class_image.php Кстати, пробовал запустить в галерее функцию добавления водяного знака. Прописал абсолютный путь, но ничего к изображению не добавилось. Это вообще работает?!Работает. Много раз видел. Само изображение есть? Но сам не ставил. Мне это не надо. У меня все фотографии авторские и если автор сам захочет, он поставить кпирайт на свою работу. Какое право, я имею ставить свой копирайт на чужую работу.... Share this post Link to post
Zero108 124 01/10/2010 07:47 AM Я что-то не пойму: \ips_kernel\class_image.php отвечает за jpg форума, а не галереи, так? Или он заменяется галерейным? В файле \ips_kernel\class_image.php я еще давно поменял, когда спрашивал в этой ветке насчет превьшек для форума. А вот как в галерее сделать, никак не пойму... :D Share this post Link to post
Ph-A 395 01/10/2010 09:00 AM А вот как в галерее сделать, никак не пойму... :DИзвините. Вчера невнимательно прочитал. sources/components_public/gallery/lib/lib_image.php Ищем @$map[$this->file_extension]( $this->img, $this->out_file_complete ); и меняем на @$map[$this->file_extension]( $this->img, $this->out_file_complete, X ); X - Степень сжатия. Максимально 100, но уже нормально 80 - 90 Это строчка встречается два раза. В функции _write_file_gd() и _write_file_gd1(). Как правило, используется gd(). Но можно заменить в обоих местах. Хуже не будет. Или как вариант, в использование галереи, вместо библиотеки GD использовать ImageMagick. Качество превьюшек, будет на уровне. Единственно, что ImageMagick должен быть установлен у хостера и надо прописать путь к бинарнику (convert), где он лежит. Что-то типа -- /usr/local/bin/ IPS увы не использует ImageMagick как модуль php, а работает с бинарным файлом. Share this post Link to post