Типичный программист | IT, программирование, разработка, ИИ
IT и технологии · 1 октября 2026 г.
Как PNG-фильтры увеличили анимацию в 2,4 раза
Как PNG-фильтры увеличили анимацию в 2,4 раза Энкодер выбирал для каждой строки один из пяти PNG-фильтров с минимальной суммой разностей. Семь из восьми анимаций стали тяжелее; худшая выросла с 6 до 14,5 МБ. Автор по очереди применил каждый фильтр ко всем строкам. Те же семь файлов снова проиграли варианту None. Причина оказалась в самих разностях: эвристика предпочитала небольшие меняющиеся байты, а DEFLATE лучше сжимал длинные повторы. На анимации с плавными тонами фильтры, наоборот, помогли. Исправление: сжать первый кадр двумя способами, выбрать меньший результат и использовать эту стратегию для остальных кадров. В разборе на DEV Community есть код и ещё один полезный приём: тест с заранее известным ответом, который поймал ошибку в измерениях.