Принудете ngx_pagespeed да използва png8

Използвах ngx_pagespeed за оптимизиране на моите Nginx сървъри. Един от сървърите е обратен прокси за изображения, който трябва да извлича изображения от отдалечен сървър, да ги оптимизира и да ги изпраща обратно на клиента. Повечето от отдалечените изображения обаче вече са оптимизирани под PNG24, така че pagespeed просто ще го изпусне с image_rewrites_dropped_nosaving_noresize броя, увеличен с единица. Ако ръчно оптимизирам такова изображение с PNG8, това ще спести много, без наистина да навреди на изображенията ми, в моя случай.

Има ли начин да принудя ngx_pagespeed да оптимизира с PNG8 или други параметри, които мога да опитам? Имайте предвид, че компресията без загуби не е изискване за моя случай. Опитах също да преобразувам в webP, но не спечелих много.

Благодаря ти


person Andy    schedule 20.12.2013    source източник


Отговори (1)


Благодарим ви, че използвате ngx_pagespeed. Следващият път можете да пишете на "[email protected]" за по-бърз отговор.

Разбирам, че PNG8 е по-ефективен при намаляване на байтовете в сравнение с PNG24. Изображения с 256 цвята или по-малко ще паснат перфектно в PNG8. Въпреки това, изображения с повече цветове биха имали влошено качество, ако бяха преобразувани в PNG8.

ngx_pagespeed не преобразува PNG24 в PNG8, за да избегне потенциалната загуба на качество. И съжалявам, че в момента няма начин да се принуди такова преобразуване. Въпреки това, ngx_pagespeed продължава да подобрява производителността на компресията на изображението и може да извърши автоматично преобразуване за 256 цвята и по-ниски.

Ако вашите изображения нямат алфа канал (прозрачен цвят) и сте добре с компресията със загуби, можете да включите филтъра „convert_png_to_jpeg“. Този филтър ще конвертира PNG изображения в JPEG, ако последният има малко байтове.

person Huibao Lin    schedule 20.12.2013
comment
Благодаря ти Huibao за отговора, въпреки че проблемът ми все още съществува, но слага край на безкрайното ми търсене. За съжаление имам алфа канал, но имам само по-малко от 256 цвята. Благодаря за насоките на групите в Google. Ще го използвам по-често. Благодаря! - person Andy; 21.12.2013