Со страницы руководства imagepng (), связанной с вопросом,
filters
Позволяет уменьшить размер файла PNG.Это поле битовой маски, которое может быть установлено в любую комбинацию констант PNG_FILTER_XXX.PNG_NO_FILTER> или PNG_ALL_FILTERS также можно использовать для соответствующего отключения или активации всех фильтров.
Таким образом, чтобы libpng попробовал фильтры none, sub и up, вы должны использовать
PNG_FILTER_NONE|PNG_FILTER_SUB|PNG_FILTER_UP
PNG_ALL_FILTERS - это просто сокращение для
PNG_FILTER_NONE|PNG_FILTER_SUB|PNG_FILTER_UP|PNG_FILTER_AVG|PNG_FILTER_PAETH
От того, какой фильтр использовать, зависит от изображения.Изображения с 256 или менее цветами обычно сжимаются лучше с PNG_NO_FILTER, в то время как изображения с большим количеством цветов (например, фото) обычно сжимаются лучше с PNG_FILTER_SUB или PNG_ALL_FILTERS.Такие приложения, как «optipng» или «pngcrush», пытаются оптимизировать выбор фильтра.Если вы собираетесь использовать одно из этих сторонних приложений для окончательной оптимизации, вам просто нужно использовать PNG_NO_FILTERS для ваших рабочих копий, для скорости.