


Алгоритмы уменьшения изображений, когда GIF лучше PNG. Уменьшаем GIF (Graphics Interchange Format)
Рецепт №2: уменьшаем количество цветов
Рецепт №3: автоматическая оптимизация
Рецепт №4: уменьшаем анимацию вручную
Рецепт №5: когда GIF лучше PNG
Резюме
Очень хочется упомянуть вытекающий из предыдущего рецепта способ создания полноцветных изображений в формате GIF, тем более что такой способ также иногда позволяет получить выигрыш в размере.
Самый простой принцип получения полноцветного GIF следующий: исходное изображение разбивается на несколько кусков, так, чтобы количество цветов в каждом из них было не более 256 (проще всего — сделать куски 16×16, это как раз 256 пикселей, значит и цветов не может быть больше). Каждый кусок вставляется в отдельный кадр и между ними выставляется нулевая задержка. Таким образом, пользователь увидит все кадры одновременно, а они сложатся в цельную картинку
Существуют несколько программ, работающих подобным или чуть более сложным способом. Лучшая, на наш взгляд — платная программа itsagif, фирмы Pedagoguery Software.
Авторы itagif заявляют, что полноцветный GIF может выиграть у PNG по эффективности сжатия на изображениях с количеством цветов от 300 до 1000. Это действительно так, если в изображении не встречаются элементы, которые PNG умеет сжимать лучше GIF, например, градиенты.

Рис. 3.2. Пример изображения, занимающего меньше в полноцветном GIF, чем в PNG
Вот этот рисунок бабочки 756×488 пикселей, содержит 1073 уникальных цвета. В файле PNG, оптимизированном программой PNGout, он занимает 77,6Кб, тогда как в полноцветном GIF — 68,4, экономия составляет 12%.