way1 Posted January 22, 2013 Share Posted January 22, 2013 У меня Prestashop 1.5.3.1. При загрузке изображений товаров их размер (вес в килобайтах) на сервере увеличивается чуть ли не в два раза. Чем это вызвано? В настройках изображений ставлю качество сжатия для JPG - 90. В настройках thickbox стоит размер 700x700. Гружу уже заранее подготовленные и СЖАТЫЕ оптимизатором картинки тоже размером 700x700. Для чистоты эксперимента после загрузки картинок чищу кэш браузера, кэш магазина и регенерирую миниатюры. Потом обновляю страницу товара. И вот тебе на! Размеры картинок (вес в килобайтах) на сервере стали почти в два раза больше. Например гружу 700x700 38 кб, а при просмотре товара и сохранении на диск размер файла 700x700, но вес уже 62 кб! На картинки накладывается водяной знак, но он весит всего 3 кб (формат gif). В чем причина? Link to comment Share on other sites More sharing options...
way1 Posted January 22, 2013 Author Share Posted January 22, 2013 Дополнение - думал может Prestashop при наложении водяного знака как-то там неоптимально все это обрабатывает. Проверил ситуацию без водяного знака, отключив модуль Водяной знак. Размер файла все равно увеличился почти в два раза. С водяным знаком - 61кб, без водяного - 59 кб, а загружал 38 кб. Не могу понять, в чем причина и как исправить. Link to comment Share on other sites More sharing options...
Dimitri Yelquin Posted January 22, 2013 Share Posted January 22, 2013 Любое изображение имеет кроме того, что мы видим, ещё и скрытую техническую информацию о фотографии (когда снято, чем снято и прочее и прочее). Оптимизация, как раз, и предполагает удаление всей ненужной информации. ПрестаШоп увеличивает вес изображения? Думаю, он добавляет свою. Где-то, может быть (не знаю точно, потому что не сталкивался), есть настройки, отключающие эту опцию, добавление информации?.. Другая мысль... Говорите, 38 Кб у изображения 700 на 700? Маловато для такого. Может быть, ПрестаШоп накручивает вес фотографии, оптимизируя её до заданного качества 90? Link to comment Share on other sites More sharing options...
way1 Posted January 23, 2013 Author Share Posted January 23, 2013 (edited) Техническая информация занимает минимум - не в 2 раза же увеличивать фотографию? Не поленитесь - проверьте на своем сайте, и Вы тоже такое увидите. Разве никого не смущает, что из-за этой особенности Prestashop вес странички увеличится в несколько раз и грузиться она будет очень медленно. Я, правда, проверяю пока на локальном сервере, но не умаю, что это связано с его особенностями. Может проверите у себя и отпишетесь сюда - у вас также. Какую это свою информацию Prestashop должен вставлять в качестве технической в фотографии, чтобы вес так рос? Копию текста всей странички, сведения о сервере и мои паспортные данные? Конечно же, нет! Он где-то неоптимально работает с изображениями. Я фотографии сжимаю замечательной программой Ulead Smart Saver Pro - она старенькая, но работает вроде лучше многих других программ аналогичного назначения. Если конкретно по данному файлу, вот фотошоповскую работу сохраненную в JPG со 100%-ным качеством он сжал со 158 кб до 38,5 кб с настройками по умолчанию при сохранении размера 700x700. А эта зараза Prestashop увеличивает их размеры (вес) в два раза при выставленном качестве JPG = 90! Я вот взял наугад несколько чужих сайтов (buysleep.ru, cdolls.ru, centerlight.ru, florestin.ru, geart.ru) на Prestashop (версий не знаю): скопировал на диск картинки размера thickbox и сжал их в пакетном режиме прогой с сохранением размера и пропорций в пикселях. И каков результат - ужало все почти в 2 раза с картинку с постельным бельем вобще с 278 до 47 кб - в 5 раз! Вот до сжатия: Вот после сжатия: C:\after_compressing.jpg А вот две картинки. До сжатия (45 кб): После сжатия (24 кб): Разве разница в качестве на глаз видна? Это при практически неотличимом качестве картинок! Я не думаю, что дизайнеры этих и других сайтов так бестолковы, что не оптимизировали картинки перед загрузкой. Уверен, что их исходный размер до загрузки на сайт был именно примерно в 2 раза меньше. Совершенно очевидно, что, Prestashop сует какой-то мусор в эти картинки или же не лучшим образом с ними работает. Задайте, пожалуйста, вопрос разработчикам. Что делать? Проверьте у себя и отпишите разработчикам. Это же никуда не годится! Соори, не знаю, почему картинки не загрузились. Edited January 23, 2013 by Lion1 (see edit history) Link to comment Share on other sites More sharing options...
Dimitri Yelquin Posted January 23, 2013 Share Posted January 23, 2013 (edited) Ну, Вы так сразу столько на ПрестаШоп наговорили!.. Почему Вы так уверены, что и у меня, и у других — также! Специально проверил. Размеры загружаемых и загруженных изображений у меня совпадают. Никакого увеличения. Правда, одно меня напугало... Загружал — было 300, загрузил — стало 1400! А потом смотрю — то ж пинг! А для png у меня настройка 0. Это для самого хорошего качества микрографики, которая у меня вся с прозрачными фонами и в цветах, не поддерживаемых гифом. Да, Вы правы, пожалуй. Никакой своей информации ПрестаШоп в изображения не пихает. Но, значит, у Вас что-то с настройками... Не верите мне, попросите ещё ког-нибудь сравнить фотки до и после загрузки. Что они скажут? Edited January 23, 2013 by Dimitri Yelquin (see edit history) Link to comment Share on other sites More sharing options...
Dimitri Yelquin Posted January 23, 2013 Share Posted January 23, 2013 (edited) Может это имеет какое-то значение... Такая деталь, у себя в Фотошопе я сохраняю изображения с тем же качеством, которое задано в ПрестаШопе. Может быть, если изображение оптимизировано, включая качество, которое из рациональных соображений облегчено не только за счёт выкидавания из него ненужных метаданных, но и за счёт снижения качества сохранения — ну, например, зачем сохранять с качеством 90, когда и с качеством 75 в этом формате изображение получается визуально почти неотличимым? — то при сохранении его с более высоким качеством вес, естественно, увеличивается. Edited January 23, 2013 by Dimitri Yelquin (see edit history) Link to comment Share on other sites More sharing options...
Kerm Posted January 23, 2013 Share Posted January 23, 2013 Может в админке навкладке изображения стоит галка на против png качества фоток и они при загрузке конвертятся в png но расширение файла остается прежним jpg... Link to comment Share on other sites More sharing options...
Dimitri Yelquin Posted January 23, 2013 Share Posted January 23, 2013 (edited) И правда, какая там настройка стоит? Всё конвертировать в jpg? Всё конвертировать в png? Или средняя, где говорится, что всё в jpg, но если оригинал в png, то его таким и оставлять. Я выбрал эту настройку ради миниатюрок. А большие картинки я сам сначала сохраняю в jpg. Edited January 23, 2013 by Dimitri Yelquin (see edit history) Link to comment Share on other sites More sharing options...
way1 Posted January 24, 2013 Author Share Posted January 24, 2013 Сначала отвечу на предположения о причинах. В настройках стоит именно первая опция: JPG - без всяких вариантов PNG. Ошибки в формате нет, так как у меня есть программа, которая показывает файлы, сохраненные не со "своими" расширениями. Т.е. гружу точно JPG, а не PNG с переименованные расширением. Загружал уже оптимизированные картинки. Делал так: В Фотошопе готовил квадратные картинки 700x700, сохранял их со 100%-ным качеством в JPG, а потом оптимизировал Ulead Smart Saver Pro с качеством 75 Progressive. А теперь поэкспериментируем пару минут. Настройки изображений в Prestashop: Качество изображений: Использовать JPEG Качество JPEG: 100 Качество PNG: 7 Использовать совместимую систему: Да Сгенерированные изображения будут вписываться: автоматически Максимальные размеры для загрузки: 8 мб, 1280x1024 Сразу говорю: перед каждым изменением чищу кэш браузера, кэш Prestashop, делаю перегенерацию миниатюр с удалением предыдущих изображений, опять чищу кэши и обновляю страницу в браузере. Возьмем для пробы одну картинку и поэкспериментируем с ней в Prestashop. Итак, после Фотошопа размер: 396 кб 700x700 px - JPG картинка, сохраненная со 100%-ным качеством. Назовем ее after_photoshop.jpg И есть вторая картинка, полученная путем сжатия after_photoshop.jpg в программе Ulead SmartSaver Pro с качеством 75 Progressive. Разрешение не меняем (700x700). Размер картинки ужался до 72,1 кб, т.е. в 5 с лишним раз. Назовем ее compressed.jpg Добавляю compressed.jpg к картинкам товара. Жму "Перекомпилировать миниатюры". Нахожу картинку товара для thickbox. Вот что и требовалось доказать: размер картинки из 72 кб стал 249 кб! Я полагал, что если я ставлю качество JPG в настройках Prestashop 100, то Prestashop НИЧЕГО НЕ ДОЛЖНА делать с картинко, т.е. ни сжимать, ни ухудшать - как есть, так и публикует. Проверим теперь как ведет себя Prestashop при загрузке after_photoshop.jpg - картинки после Фотошопа со 100%-ным качеством. Качство JPG в Prestashop оставляем 100. Проверяем. На выходе получаем 349 кб вместо 396 (уменьшились примерно на 30 кб размеры исходной картинкии thickbox? размеры который 700x700 были оставлены как и у входящей картинки). По логике Prestashop не должна вмешиваться в исходную картинку, а она и тут наколбасила что-то и из накодлбасенной настругала уже thickbox. ЗАЧЕМ Prestashop меняет JPG картинки, качество для которых 100 и размер которых равен входящим? Я не пойму логики вобще! Хорошо, дадим ей еще возможность. Ставим в Prestashop качество 75 и будем грузить after_photoshop.jpg - картинку после Фотошопа со 100%-ным качеством. Пусть ее сжимает Prestashop до качества 75. Проверяем. Вот теперь совсем другое дело. Картинка ужалась до 76 кб вместо исходной 396. Т.е. примерно то, что дал и оптимизатор на выходе. Проверим для чистоты эксперимента с другими картинками. Теперь гружу неоптимизированные фото. КАРТИНКА 1: Исходная неоптимизированная: 186 кб Prestashop thikbox с водяным знаком: 44 кб Оптимизированная сторонней программой: 39 кб КАРТИНКА 2: Исходная неоптимизированная: 197 кб Prestashop thikbox с водяным знаком: 48 кб Оптимизированная сторонней программой: 40 кб КАРТИНКА 3: Исходная неоптимизированная: 255 кб Prestashop thikbox с водяным знаком: 49 кб Оптимизированная сторонней программой: 45 кб Видимо со мной получилос то же, что и с некоторыми вышеозначенными дизайнерами сайтов - Горе от ума, как говорится. Грузили оптимизированные - получили на выходе неоптимизированные. А надо было грузить несжатые. В этом отношении все равно Prestashop глючит. Почему он вместо дальнейшего сжатия оптимизиролванных картинок по весу (качество тоже ухудшится), как бы их разжимает и оставляет с таким увеличенным размером и худшего качества? В ОБЩЕМ РЕЗЮМЕ: 1. Грузите в Prestashop только неоптимизированные JPG файлы и выставляйте качество, которое приемлемо для Вас. Для меня 75 - самое нормальное. Prestashop сама оптимизирует картинки. 2. Не грузите уже оптимизированные картинки, иначе вы получите на выходе картинки в несколько раз большие чем грузили. Почему - не знаю. Если подскажете, то это тоже позволит сэкономить может несколько кб на каждой картинке. Link to comment Share on other sites More sharing options...
Dimitri Yelquin Posted January 24, 2013 Share Posted January 24, 2013 «Наколбасил», «глючит» и кучу других комплиментов успели накидать ПрестаШопу. Какое-то потребительское отношение к движку. Нашли баг — несите его на багтрекер, участвуйте в улучшении его функционала. А тут ещё получается, что если даже это и были глюки, то у Вас в голове, а не в ПрестаШопе. Сами же это в конце и доказали... Link to comment Share on other sites More sharing options...
sors Posted January 24, 2013 Share Posted January 24, 2013 Используются функции php для работы с картинками, например imagecopyresampled. Попробуйте уменьшить качество изображения. Возможно исходные картинке не в truecolor, поэтому они весят меньше. Link to comment Share on other sites More sharing options...
c00lpix Posted May 29, 2013 Share Posted May 29, 2013 Аналогичная проблема. Внесу больше ясности в ситуации. Проблема заключается в цветовых профилях RGB или sRGB. Если цветовая схема исходного изображения RGB, при загрузке в presta оптимизирует изображение под web-интерфейс и урезает цвета(цвет становится менее насыщенным), но размер изображения остается тем же. Если же цветовая схема исходного изображения sRGB, presta увеличивает размер изображения раза в 3, но сохраняет цвета. Примечательно то, что, если загрузить sRGB файл, потом скачать, фотошоп с ошибкой откажется открывать этот файл. Link to comment Share on other sites More sharing options...
c00lpix Posted May 29, 2013 Share Posted May 29, 2013 (edited) Моя проблема заключалась в том, что в настройках стояла галочка "использовать PNG для всех изображений". Очевидно, presta странным образом переводил из jpeg в png и увеличивал размер. Короче, проблему решил: "Использовать JPEG" с качеством 75. Исходная цветовая схема sRGB, качество 100. Prestashop цвет не режет, ухудшение качества(с 100 до 75) заметно только при детальном изучении изображения. Размер, при этом, значительно меньше оригинала.... Edited May 29, 2013 by c00lpix (see edit history) Link to comment Share on other sites More sharing options...
Aleksey19881988 Posted January 23, 2021 Share Posted January 23, 2021 (edited) Всем добрый день, такая же проблема только на Pretsahop 1.7 и на дворе уже 2021 год, кто то решил проблему? Edited January 23, 2021 by Aleksey19881988 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now