Оптимизация призвана обеспечить наименьший размер получившегося файла.
В общем случае, если вы создали анимацию, например, из 20 GIF файлов, то размер
получившигося файла будет равен сумме размеров использованых вами файлов. Если
размер в 20 килобайт считается приемлемым для картинки на странице, то такого
нельзя сказать про файл размером 400 килобайт. К счастью, существуют способы
значительно уменьшить размер анимации. Они работают в двух направлениях -
оптимизация палитры и удаление избыточной информации. GIF файл позволяет
вам использовать любое число цветов в картинке от 2-х до 256. При этом, чем
меньше цветов, тем меньший объем занимает файл, кроме того, описание палитры
тоже требует места, и оптимизация палитры заключается в том, что необходимо
ограничится минимально необходимым числом цветов, и по возможности не
пользоваться локальными палитрами, а использовать глобальную. В том случае,
когда ваша анимация представляет собой лишь последовательную демонстрацию
несвязанных между собой видов, никуда не денешься от того, чтобы сохранить
каждый из них в вашем файле. Однако, если анимация - последовательное
преобразование картинки, при этом в каждом кадре изменяется лишь небольшая часть
рисунка, нет никакой необходимости в сохранении всего рисунка столько раз,
сколько кадров в анимации. Тут необходимо воспользоваться "ножницами"
и размещением на логическом экране. Пусть первый кадр займет всю логическую
область - он будет служить фоном, на который для каждого кадра будет в строго
определенном месте накладываться "заплатка", содержащая те изменения,
которые необходимо сделать в этом кадре. Самое сложное - правильно эту
"заплатку" расположить - запоминайте координаты левого верхнего угла
той области, которую вы вырезали, и используйте их в качестве смещения. Будте
внимательны - если вы хотите создать на вашем экране эффект "полета"
или "скольжения" изображения по фону, не забывайте, что каждый
следующий кадр должен содержать не только новое положение объекта, но и
устранять следы предыдущего. Хорошее известие - вы можете найти программу,
которая выполнит практически всю работу по оптимизации за вас. Такой
возможностью обладают Ulead GIF Animator и GIF Construction Set. Файл sample.gif, который был создан специально по случаю
написания данной статьи, создавался постепенно путем пририсовывания новых и
новых деталей. Каждый кадр целиком помещался в Ulead GIF animator, и размер
итогового файла составил 143К. Результат автоматической оптимизации - файл
размером 4К. Аналогичного результата можно добиться и с помощью GIF Construction
Set, однако эта программа создает не полностью совместимые файлы, которые
нуждаются в последующей ручной обработке.