Руководство пользователя Отмена

Передовой опыт — оптимизация FLA-файлов для Animate

  1. Руководство пользователя Adobe Animate
  2. Введение в Animate
    1. Новые возможности Animate
    2. Визуальный глоссарий
    3. Системные требования Animate
    4. Сочетания клавиш Animate
    5. Работа с несколькими типами файлов в Animate
  3. Анимация
    1. Основы анимации в Animate
    2. Кадры и ключевые кадры в Animate
    3. Покадровая анимация в Animate
    4. Работа с классической анимацией движения в Animate
    5. Инструмент «Кисть»
    6. Руководство по движению
    7. Анимация движения и язык ActionScript 3.0
    8. Сведения об анимации движения
    9. Анимация движения
    10. Создание анимации движения
    11. Использование ключевых кадров свойств
    12. Положения в анимации движения
    13. Использование Редактора движения для анимаций
    14. Редактирование траектории анимации движения
    15. Управление анимациями движения
    16. Настраиваемое ускорение и замедление
    17. Создание и применение стилей движения
    18. Настройка диапазонов анимации движения
    19. Сохранение анимации движения в файлах XML
    20. Анимация движения и классическая анимация
    21. Анимация формы
    22. Анимация с использованием инструмента «Кость» в Animate
    23. Работа с риггингом персонажей в Animate
    24. Слои-маски в Adobe Animate
    25. Работа со сценами в Animate
  4. Интерактивность
    1. Создание кнопок в Animate
    2. Преобразование проектов Animate в другие форматы документов
    3. Создание и публикация документов HTML5 Canvas в Animate
    4. Добавление интерактивных возможностей с помощью фрагментов кода в Animate
    5. Создание пользовательских компонентов HTML5
    6. Использование компонентов в HTML5 Canvas
    7. Создание пользовательских компонентов: примеры
    8. Фрагменты кода для пользовательских компонентов
    9. Рекомендации: реклама в Animate
    10. Разработка и публикация контента для виртуальной реальности
  5. Рабочая среда и рабочий процесс
    1. Создание и использование малярных кистей
    2. Использование шрифтов Google в документах HTML5 Canvas
    3. Использование библиотек Creative Cloud Libraries и Adobe Animate
    4. Использование рабочей области и панели «Инструменты» в Animate
    5. Рабочие процессы и рабочая среда Animate
    6. Использование веб-шрифтов в документах HTML5 Canvas
    7. Временные шкалы и ActionScript
    8. Работа с несколькими временными шкалами
    9. Задание настроек
    10. Использование панелей разработки Animate
    11. Создание слоев временной шкалы в Animate
    12. Экспорт анимаций для мобильных приложений и игровых платформ
    13. Перемещение и копирование объектов
    14. Шаблоны
    15. Поиск и замена в Animate
    16. Отмена/повтор действий и панель «История»
    17. Сочетания клавиш
    18. Использование временной шкалы в Animate
    19. Создание HTML-расширений
    20. Параметры оптимизации изображений и GIF-анимаций
    21. Настройки экспорта для изображений и GIF
    22. Панель «Ресурсы» в Animate
  6. Мультимедиа и видео
    1. Преобразование и объединение графических объектов в Animate
    2. Создание экземпляров символов и работа с ними в Animate
    3. Трассировка изображения
    4. Использование звука в Adobe Animate
    5. Экспорт SVG-файлов
    6. Создание видеофайлов для использования в Animate
    7. Добавление видео в Animate
    8. Рисование и создание объектов в Animate
    9. Изменение линий и фигур
    10. Обводки, заливки и градиенты в Animate CC
    11. Работа с Adobe Premiere Pro и After Effects
    12. Панели «Цвет» в Animate CC
    13. Открытие файлов Flash CS6 в Animate
    14. Работа с классическим текстом в Animate
    15. Размещение иллюстраций в Animate
    16. Импортированные растровые изображения в Animate
    17. Трехмерная графика
    18. Работа с символами в Animate
    19. Рисование линий и фигур в Adobe Animate
    20. Работа с библиотеками в Animate
    21. Экспорт звуков
    22. Выделение объектов в Animate CC
    23. Работа с AI-файлами Illustrator в Animate
    24. Применение режимов наложения
    25. Упорядочивание объектов
    26. Автоматизация задач с помощью меню «Команды»
    27. Многоязычный текст
    28. Использование камеры в Animate
    29. Графические фильтры
    30. Звук и ActionScript
    31. Настройки рисования
    32. Рисование инструментом «Перо»
  7. Платформы
    1. Преобразование проектов Animate в другие форматы документов
    2. Поддержка специализированных платформ
    3. Создание и публикация документов HTML5 Canvas в Animate
    4. Создание и публикация документа WebGL
    5. Упаковка приложений AIR for iOS
    6. Публикация приложений AIR for Android
    7. Публикация для Adobe AIR на настольных ПК
    8. Параметры публикации ActionScript
    9. Рекомендации: размещение ActionScript в приложении
    10. Использование ActionScript в Animate
    11. Специальные возможности в среде Animate
    12. Создание и использование сценариев
    13. Обеспечение поддержки специализированных платформ
    14. Общие сведения о поддержке специализированных платформ
    15. Работа с плагинами поддержки специализированных платформ
    16. Отладка сценариев ActionScript 3.0
    17. Обеспечение поддержки специализированных платформ
  8. Экспорт и публикация
    1. Экспорт файлов из Animate CC
    2. Публикация OAM
    3. Экспорт SVG-файлов
    4. Экспорт графики и видео из Animate
    5. Публикация документов AS3
    6. Экспорт анимаций для мобильных приложений и игровых платформ
    7. Экспорт звуков
    8. Рекомендации: советы по созданию контента для мобильных устройств
    9. Рекомендации: правила работы с видео
    10. Рекомендации: руководство по созданию SWF-приложений
    11. Рекомендации: формирование структуры FLA-файлов
    12. Рекомендации: оптимизация FLA-файлов для Animate
    13. Параметры публикации ActionScript
    14. Задание параметров публикации для Animate
    15. Экспорт файлов-проекторов
    16. Экспорт изображений и анимированных файлов GIF
    17. Шаблоны публикации HTML
    18. Работа с Adobe Premiere Pro и After Effects
    19. Быстрая публикация анимаций
  9. Устранение неполадок
    1. Исправленные неполадки
    2. Известные проблемы

 

Оптимизация документов Animate

Вместе с размером файла увеличивается время загрузки и воспроизведения документа. Есть несколько действий по оптимизации документа для воспроизведения. В процессе публикации Animate оптимизирует документы автоматически. Перед экспортом документа его можно оптимизировать дополнительно, следуя различным стратегиям сокращения размера файла. Кроме того, при публикации SWF-файл можно сжать. После внесения изменений протестируйте документ. Для этого запустите его на разных компьютерах под управлением различных ОС и с различной скоростью подключения к Интернету.

Оптимизация документов

  • Для каждого элемента, который встречается неоднократно, используйте символы (анимированные и др.).

  • По возможности используйте анимацию движения при создании последовательностей анимации. Анимация движения занимает меньше места, чем последовательность ключевых кадров.

  • В последовательностях анимации используйте фрагменты ролика вместо графических символов.

  • Ограничьте область изменения в каждом ключевом кадре. Постарайтесь, чтобы действие происходило в области минимального размера.

  • Избегайте анимации растровых элементов. Используйте растровые изображения в качестве фона или статических элементов.

  • По возможности используйте MP3, самый компактный звуковой формат.

Оптимизация элементов и линий

  • Группируйте элементы.

  • Элементы, которые меняются в процессе анимации, следует отделять от неизменяемых элементов с помощью слоев.

  • Сведите к минимуму число отдельных линий, используемых для описания фигур, с помощью команды «Модификация» > «Фигура» > «Оптимизировать».

  • Ограничьте число специальных типов линий, например пунктирных, точечных пунктирных, рваных и т. п. Сплошные линии требуют меньше памяти. Линии, созданные с помощью инструмента «Карандаш», занимают меньше места, чем мазки кисти.

Оптимизация текста и шрифтов

  • Ограничьте число шрифтов и стилей шрифта. Старайтесь экономно использовать внедренные шрифты, поскольку они увеличивают размер файла.

  • При внедрении шрифта не включайте весь шрифт, выберите только необходимые символы.

Оптимизация цветов

  • Несколько экземпляров одного символа разных цветов можно создать с помощью меню «Цвет» в инспекторе свойств символа.

  • Цветовая палитра документа сопоставляется с палитрой браузера с помощью панели «Цвет» («Окно» > «Цвет»).

  • Используйте градиенты экономно. Заливка области градиентным цветом требует примерно на 50 байт больше места, чем заливка ее сплошным цветом.

  • Старайтесь реже использовать эффект альфа-прозрачности, поскольку это замедляет воспроизведение.

Ускорение отображения документа

Чтобы ускорить отображение документа, отключите с помощью команд в меню «Просмотр» функции высококачественной визуализации, требующие дополнительных вычислений и замедляющие отображение документа.

Ни одна из этих команд не влияет на экспорт документа из Animate. Качество отображения документов Animate в веб-браузере задается с помощью параметров object и embed. Команда «Опубликовать» сделает это автоматически.

  1. Выберите в меню «Просмотр» > «Режим просмотра» один из следующих параметров.

    Контуры

    Отображает только контуры, ограничивающие фигуры в монтажном кадре. Все линии выводятся как тонкие линии. Это облегчает изменение фигуры графических элементов и ускоряет отображение сложных монтажных кадров.

    Быстрый

    Отключает сглаживание и отображает все цвета и стили линий в рисунке.

    Сглаживание

    Включает сглаживание для линий, фигур и растровых изображений. Отображает фигуры и линии так, чтобы их края выглядели на экране более гладкими. Отрисовка выполняется медленнее, чем в режиме «Быстрый». Лучше всего сглаживание использовать на видеокартах, поддерживающих тысячи (16 бит) или миллионы (24 бит) цветов. В 16- или 256-цветном режиме черные линии смягчаются, но цвета могут выглядеть лучше в режиме «Быстро».

    Сглаженный текст

    Смягчает края текста. Лучше всего использовать с крупными размерами шрифта. Может выполняться медленно с большим объемом текста. Это наиболее распространенный режим работы.

    Полный

    Визуализирует содержимое сцены на рабочем столе целиком. Может замедлить отображение.

Оптимизация графических объектов и анимации

Перед тем как создавать оптимизированную и упрощенную анимацию или графические объекты, тщательно спланируйте проект. Определите ожидаемый размер файла и длительность анимации, проверьте весь процесс разработки.

Следуйте приведенным ниже рекомендациям по оптимизации графики и анимации.

  • Старайтесь не использовать градиенты, поскольку в них используется большое количество цветов и выполняются дополнительные вычисления, что усложняет процесс визуализации.

  • По той же причине сведите к минимуму использование в SWF-файле альфа-прозрачности.

    Анимация объектов, использующих эффект прозрачности, значительно загружает процессор и должна быть сведена к минимуму. Анимация прозрачных графических объектов поверх растровых изображений требует особенно больших вычислительных ресурсов. Ее использование следует свести к минимуму или полностью исключить.

     Лучший растровый формат для импорта в документы Animate — PNG, собственный формат среды Macromedia Fireworks от Adobe. PNG-файлы содержат информацию об RGB- и альфа-канале для каждого пиксела. При импорте PNG-файла Fireworks в Animate сохраняется возможность редактирования графических объектов в FLA-файле.

  • Оптимизируйте растровые изображения без излишнего сжатия. Для веб-страниц оптимальным является разрешение в 72 точки на дюйм. Сжатие растрового изображения сокращает размер файла, но излишнее сжатие снижает качество картинки. Чтобы избежать излишнего сжатия, проверьте параметры качества JPEG в диалоговом окне «Параметры публикации». В большинстве случаев лучше представлять изображение в векторном формате. Использование векторных изображений уменьшает размер файла, поскольку изображения формируются в результате вычислений, а не из множества пикселов. Ограничьте число цветов в изображении, в то же время сохраняя его качество.

     Избегайте увеличения растровых изображений свыше исходных размеров, поскольку это снижает качество изображения и повышает загрузку процессора.

  • Задайте свойству _visible значение false, вместо того чтобы уменьшать уровень _alpha до 0 или 1. Вычисление уровня _alpha для экземпляра в рабочей области сильно загружает процессор. Отключение отображения экземпляра экономит циклы ЦП и память, что обеспечивает более плавную анимацию в SWF-файлах. Вместо выгрузки и потенциальной повторной загрузки ресурсов задавайте для свойства _visible значение false, что позволит снизить нагрузку на процессор.

  • Сократите число линий и точек, используемых в SWF-файле. Используйте диалоговое окно «Оптимизация кривых» («Модификация» > «Фигура» > «Оптимизировать») для сокращения числа векторов в рисунке. Чтобы сделать оптимизацию более глубокой, выберите параметр «Применить несколько проходов». Оптимизация картинки уменьшает размер файла, но излишнее сжатие ухудшает качество. В то же время оптимизация кривых уменьшает размер файла и повышает производительность SWF-файла. Существуют сторонние параметры для специализированной оптимизации кривых и точек, которые дают другие результаты.

Чтобы получить наилучшие результаты, попробуйте использовать разные способы анимации содержимого и проверьте все доступные параметры.

Увеличение частоты кадров (измеряется в кадров/сек или fps) повышает плавность анимации в SWF-файле, но может увеличить нагрузку на процессор, особенно на старых компьютерах. Протестируйте анимацию с разной частотой кадров, чтобы определить наименьшую возможную частоту.

Пример анимации со сценарием см. на веб-странице «Примеры Animate» по адресу www.adobe.com/go/learn_fl_samples_ru. Загрузите и распакуйте ZIP-файл Samples и перейдите в папку ActionScript2.0/Animation, где находится пример.

Частота кадров и производительность анимации

При добавлении в приложение анимации учтите частоту кадров, установленную в FLA-файле. Частота кадров может влиять на производительность SWF-файла и компьютера, где воспроизводится файл. Слишком большое значение частоты кадров может привести к проблемам, связанным с процессорами, особенно при слишком большом объеме ресурсов или использовании сценария ActionScript в процессе создания анимации.

Однако необходимо учесть и то, что частота кадров влияет на плавность воспроизведения анимации. Например, если в инспекторе свойств задана частота 12 кадров/с, то за каждую секунду воспроизводится 12 кадров. Если в документе задана частота 24 кадров/с, то анимация будет воспроизводиться более гладко, чем при частоте 12 кадров/с. Однако анимация с частотой 24 кадров/с также и воспроизводится быстрее, чем при частоте 12 кадров/с, поэтому общая длительность (в секундах) будет меньше. Таким образом, чтобы создать 5-секундную анимацию при более высокой частоте кадров, необходимо добавить дополнительные кадры, чтобы заполнить те же 5 секунд (что увеличит общий размер файла анимации). Файл 5-секундной анимации с частотой 24 кадров/с обычно имеет больший размер, чем файл 5-секундной анимации с частотой 12 кадров/с.

 При создании анимации со сценарием с помощью обработчика событий onEnterFrame анимация воспроизводится с частотой кадров документа, как при создании анимации движения на временной шкале. Альтернативой использованию обработчика событий onEnterFrame является функция setInterval (см. руководство «Справочник ActionScript® 2.0 для Adobe® Flash® Professional CS5»). Вместо того чтобы полагаться на частоту кадров, можно вызывать функции через заданные интервалы. Как и в случае с onEnterFrame, чем чаще используется setInterval для вызова функции, тем больше вычислительных ресурсов потребуется для анимации.

Используйте минимально возможную частоту кадров, позволяющую воспроизводить анимацию плавно при исполнении. Это позволит уменьшить нагрузку на процессор в компьютере конечного пользователя. Высокие частоты кадров (более 30–40 кадров/с) серьезно повышают использование вычислительных ресурсов, хотя изменение внешнего вида анимации при исполнении при этом незначительно или отсутствует.

В процессе разработки следует выбирать частоту кадров анимации как можно раньше. При тестировании SWF-файла проверьте длительность и размер SWF-файла анимации. Частота кадров существенно влияет на скорость анимации.

Фильтры и производительность SWF-файла

Если в приложении используется слишком много фильтров, то используется очень большой объем памяти, от чего производительность Flash Player может падать. Поскольку фрагмент ролика с присоединенными фильтрами использует два 32-битных растровых изображения, приложению может потребоваться значительный объем памяти, если используется много растровых изображений. Операционной системе компьютера может не хватить памяти. На современных компьютерах ошибки нехватки памяти возникают редко, кроме случаев, когда фильтры используются приложением чрезвычайно интенсивно (например, когда в рабочей области находятся тысячи растровых изображений).

Однако, если возникает ошибка нехватки памяти, происходит следующее.

  • Массив фильтров игнорируется.

  • Фрагмент ролика отрисовывается с помощью обычного векторного визуализатора.

  • Растровые изображения во фрагменте ролика не кэшируются.

    С момента возникновения ошибки нехватки памяти фрагмент ролика больше не пытается использовать массив фильтров и растровый кэш. Другим фактором, влияющим на производительность проигрывателя, является значение параметра качества, заданное для каждого из примененных фильтров. Чем выше значения, тем больше требуется вычислительных ресурсов и памяти во время визуализации, в то время как при более низких значениях требуется меньший объем ресурсов. Старайтесь не использовать лишние фильтры и устанавливайте по возможности более низкие значения качества.

     Если объект размером 100x100 пикселов увеличить в два раза, то памяти потребуется в четыре раза больше, поскольку содержимое будет иметь размер 200x200 пикселов. Если изображение увеличить еще вдвое, то фигура отрисовывается как объект размером 800x800 пикселов и потребует в 64 раза больше памяти, чем исходный объект размером 100x100 пикселов. При использовании фильтров в SWF-файле следует всегда отключать функции масштабирования в контекстном меню SWF-файла.

    Ошибки могут возникнуть при использовании недопустимых типов параметров. Некоторые параметры фильтров имеют также определенный допустимый диапазон. Если установить значение, выходящее за пределы допустимого диапазона, то значение изменяется на ближайшее допустимое. Например, качество должно иметь значение от 1 до 3 для стандартной операции, и этому параметру можно присвоить только значения от 0 до 15. Значение, превышающее 15, заменяется на 15.

    Некоторые конструкторы имеют ограничения на длину массивов, передаваемых в качестве входных параметров. Если фильтр свертывания или фильтр цветовой матрицы создается на основе недопустимого массива (неправильного размера), то конструктор завершает работу с ошибкой, и фильтр не создается. Если объект фильтра использовать впоследствии в массиве фильтров фрагмента ролика, то он будет пропущен.

    Совет. При использовании фильтра размытия значения blurX и blurY, являющиеся степенями 2 (такие как 2, 4, 8, 16 и 32), позволяют ускорить расчеты и повысить производительность на 20–30 %.

Кэширование растровых изображений и производительность SWF-файла

Кэширование растровых изображений позволяет повысить производительность неизменяемых фрагментов ролика в приложениях. Если задать свойствам MovieClip.cacheAsBitmap или Button.cacheAsBitmap значение true, то Flash Player будет кэшировать внутренние растровые представления фрагмента ролика или экземпляра кнопки. Это позволяет увеличить производительность фрагментов ролика со сложным векторным содержимым. Все векторные данные для фрагмента ролика, имеющего кэшированный растр, отрисовываются в растровом изображении, а не в основной рабочей области.

 Это растровое изображение копируется в основную рабочую область в виде пикселов без растяжений и поворотов, которые привязываются к ближайшим пиксельным границам. Пикселы отображаются в точном соответствии с родительским объектом. При изменении границ растрового изображения оно не растягивается, а создается повторно.

Дополнительные сведения о кнопке кэширования или экземплярах фрагмента ролика см. в следующих разделах:

  • «О кэшировании и прокручивании фрагментов роликов с помощью ActionScript» в руководстве Изучение ActionScript 2.0

  • «Кэширование фрагмента ролика» в руководстве Изучение ActionScript 2.0

    Свойство cacheAsBitmap следует использовать во фрагментах ролика, содержащих в основном статическое содержимое и редко подвергающихся масштабированию и повороту. Использование в таких фрагментах ролика свойства cacheAsBitmap может повысить производительность при преобразовании фрагмента ролика (при изменении координат x и y).

    При включении кэширования фрагментов ролика создается подложка, которая обладает несколькими преимуществами — например, позволяет быстрее визуализировать сложную векторную анимацию. В некоторых случаях включение кэширования не повышает производительность или даже снижает ее.

    Общая производительность кэшированных данных зависит от сложности векторных данных в экземплярах, от объема измененных данных и от того, включено ли свойство opaqueBackground. При изменении небольших регионов разница между подложкой и использованием векторных данных может оказаться незначительной. Перед развертыванием приложения следует протестировать оба сценария.

Случаи применения кэширования растровых изображений

Ниже приведены типичные сценарии, в которых кэширование растровых изображений для оптимизации векторной графики может оказаться очень выгодным.

Сложное фоновое изображение

Приложение, которое содержит детализированное и сложное фоновое изображение из векторных данных. Для повышения производительности выберите содержимое, сохраните его во фрагменте ролика и задайте для свойства opaqueBackground значение true. Фон визуализируется как растровое изображение и поддерживает быструю перерисовку, что повышает скорость воспроизведения анимации.

Прокрутка текстового поля

Приложение, отображающее большой объем текста в текстовом поле с прокруткой. Разместите текст в прокручиваемом фрагменте ролика с границами прокрутки (свойство scrollRect), что позволит увеличить скорость прокрутки пикселов в указанном экземпляре. При прокрутке экземпляра фрагмента ролика все текстовое поле не формируется заново, вместо этого прокручиваемые пикселы сдвигаются вверх, после чего формируется новая область.

Система окон

Приложение со сложной системой перекрывающихся окон. Каждое окно можно открыть или закрыть (например, окна веб-обозревателя). Если каждое окно пометить как подложку (задав для свойства cacheAsBitmap значение true), то все помеченные окна будут изолированными и будут кэшироваться. Пользователь может перетаскивать окна, перекрывая ими друг друга, при этом векторное содержимое в каждом окне не приходится формировать заново.

Когда не следует применять кэширование растровых изображений

Неправильное применение кэширования растровых изображений может плохо повлиять на SWF-файл. При разработке FLA-файла с использованием подложек следуйте приведенным ниже рекомендациям.

  • Не используйте подложки (фрагменты ролика с включенным кэшированием) больше, чем это необходимо. Каждая подложка использует больше памяти, чем обычный фрагмент ролика. Используйте подложки только для ускорения визуализации.

  • Кэшированные растровые изображения могут занимать значительно больше памяти, чем обычный экземпляр фрагмента ролика. Например, если фрагмент ролика в рабочей области имеет размер 250x250 пикселов, то при кэшировании он может занимать до 250 Кбайт по сравнению с 1 Кбайт при работе с ним как с обычным (некэшированным) экземпляром фрагментом ролика.

  • Избегайте масштабирования кэшированных подложек. Если кэширование растровых изображений используется чрезмерно активно, то потребляется большой объем памяти (см. предыдущий пункт), особенно при увеличении масштаба.

  • Вместо экземпляров фрагментов ролика, содержащих в основном статические данные (неанимированных), лучше использовать подложки. Такой экземпляр можно перетаскивать или перемещать, но его содержимое не должно быть анимированным или значительно изменяться. Например, если экземпляр вращается или преобразуется, то используется попеременно поверхность и векторные данные, что затрудняет расчеты и плохо влияет на работу SWF-файла.

  • Если подложки используются вперемешку с векторными данными, то возрастает объем вычислений, выполняемых приложением Flash Player (а иногда и компьютером). Группируйте подложки. Например, это рекомендуется делать при создании оконных приложений.

Работа с компонентами в приложении Flash Player

Среда компонентов позволяет добавлять в компоненты новые функции, но при этом размер файла приложения может существенно увеличиваться. Компоненты наследуют функции друг друга. Один компонент увеличивает размер документа Animate, но последующие компоненты, использующие ту же среду, не обязательно будут и дальше увеличивать размер. При добавлении компонентов в рабочую область размер файла увеличивается. Но с определенного момента этот рост замедляется, поскольку компоненты совместно используют классы и не загружают новые копии одних и тех же классов.

Если несколько компонентов используют разные среды, это может заметно повлиять на размер SWF-файла. Например, компонент XMLConnector увеличивает SWF-файл на 17 Кбайт, а компоненты TextInput — на 24 Кбайт. Компонент ComboBox увеличит файл еще на 28 Кбайт, поскольку не является частью среды добавленных ранее компонентов. Поскольку компонент XMLConnector использует привязку данных, то классы увеличивают SWF-файл на 6 Кбайт. Документ, в котором используются все эти компоненты, имеет первоначальный размер в 77 Кбайт еще до того, как туда что-либо добавил автор. Добавляя в документ новый компонент, имейте в виду размер SWF-файла.

Компоненты должны существовать в библиотеке родительского SWF-файла. Например, приложению необходима копия используемых компонентов в собственной библиотеке, даже если эти компоненты являются обязательными только в дочерних SWF-файлах, которые загружаются при исполнении. Это необходимо для того, чтобы обеспечить правильную работу компонентов, и незначительно увеличивает время загрузки родительского SWF-файла. Однако родительская библиотека не наследуется SWF-файлами, загружаемыми родительским файлом, и не является для них общей. Каждый дочерний SWF-файл должен загрузить собственную копию тех же компонентов.

При планировании публикации SWF-файла с поддержкой обратной совместимости необходимо хорошо понимать, какие компоненты имеют такую возможность. В следующей таблице приведены сведения о доступности компонентов в разных версиях Flash Player:

Компоненты

Flash Player 6 (6.0.65.0) и более ранних версий

Flash Player 6 (6.0.65.0)

Flash Player 7 и 8

Flash Player 9

ActionScript 3.0

Не поддерживается

Не поддерживается

Не поддерживается

Поддерживается

ActionScript 2.0

Поддерживается

Поддерживается

Поддерживается

Поддерживается

Набор компонентов пользовательского интерфейса V2

Не поддерживается

Поддерживается

Поддерживается

Поддерживается

Мультимедийные компоненты

Не поддерживается

Не поддерживается

Поддерживается

Поддерживается

Компоненты данных

Не поддерживается

Не поддерживается

Поддерживается

Поддерживается

Для работы компонентов пользовательского интерфейса V2 требуется отключить параметр оптимизации Flash Player 6r65 в параметрах публикации.

Оптимизация стилей и производительности компонентов

При использовании ActionScript 2.0 вызов функции setStyle в среде компонентов требует наибольшего объема вычислительных ресурсов. Сам вызов функции setStyle выполняется экономично, но вызывает большую нагрузку в связи со способом реализации. Вызов setStyle необходим не во всех приложениях. Если он используется, учтите его воздействие на производительность.

Для повышения производительности можно изменить стили перед их загрузкой, вычислением и применением к объектам SWF-файла. Если стили можно изменить до загрузки и вычисления, вызывать setStyle не потребуется.

Чтобы повысить производительность при использовании стилей, задавайте свойства каждого объекта по мере их инициализации. Если экземпляры размещаются в рабочей области динамически, задавайте свойства в методе initObj при вызове метода createClassObject(), как показано в приведенном ниже сценарии ActionScript.

createClassObject(ComponentClass, "myInstance", 0, {styleName:"myStyle", color:0x99CCFF});

Экземпляры, которые непосредственно помещаются в рабочую область, могут использовать событие onClipEvent() для каждого экземпляра либо использовать подклассы (рекомендуется). Сведения о подклассах см. в разделе «О создании подкласса» руководства Изучение ActionScript 2.0.

Если стиль компонентов требуется изменять, то эффективность приложения можно повысить с помощью компонента Loader. Чтобы использовать несколько стилей в разных компонентах, разместите каждый компонент в собственном SWF-файле. Если стили изменяются в компоненте Loader и SWF-файл перезагружается, то компоненты SWF-файла создаются заново. После повторного создания компонента очищается кэш стилей, а стиль компонента сбрасывается и связывается повторно.

 Чтобы применить один стиль ко всем экземплярам компонента в SWF-файле, измените стиль глобально с помощью метода _global.styles.ComponentName.

Использование динамических общих библиотек

Сократить время загрузки можно с помощью динамических общих библиотек. Эти библиотеки обычно необходимы для более крупных приложений или при использовании одних компонентов или символов в нескольких приложениях на сайте. Если вывести общие ресурсы за пределы SWF-файлов, то классы не нужно будет загружать повторно. Первый SWF-файл, который использует общую библиотеку, будет загружаться дольше, поскольку необходимо загрузить как сам SWF-файл, так и библиотеку. Библиотека кэшируется на компьютере пользователя и используется всеми последующими SWF-файлами. Этот процесс значительно уменьшает время загрузки некоторых крупных приложений.

Отображение специальных символов

В операционных системах используются кодовые страницы, индивидуальные для каждого конкретного региона. Например, на компьютерах в Японии используется иная кодовая страница, чем на компьютерах в Англии. При отображении текста в Flash Player 5 и более ранних версий использовалась кодовая страница. Flash Player 6 и более поздних версий используют при отображении текста кодировку Юникод. Юникод более надежен и стандартизирован, поскольку является универсальным набором символов, содержащим символы всех языков. Юникод используется в большинстве современных приложений.

Для отображения специальных символов в приложении Flash Player, начиная с версии 6, можно использовать управляющие последовательности Юникода. Однако не все символы будут отображаться правильно, если текст загружен в кодировке, отличной от UTF-8 или UTF-16 (Юникод), либо если для отображения специальных символов не используются управляющие последовательности символов Юникод. Кодовые таблицы Юникод см. на веб-сайте Юникод по адресу Unicode.org. Список типовых управляющих последовательностей символов см. в таблице, приведенной далее в этом разделе.

Приложение, не поддерживающее Юникод, использует при визуализации символов кодовую страницу операционной системы. В этом случае кодовая страница определяет символы, которые видит пользователь, поэтому они отображаются правильно, только если кодовая страница операционной системы пользователя совпадает с кодовой страницей приложения. Кодовая страница, которая использовалась при создании SWF-файла, должна совпадать с кодовой страницей на компьютере конечного пользователя. Кодовые страницы — это не самое удачное решение для приложений, предназначенных для международной аудитории. В таких приложениях следует использовать Юникод.

Параметр System.useCodepage в коде задает использование системной кодовой страницы вместо Юникода.

Этот вариант следует использовать только при загрузке текста в кодировке, отличной от Юникода, из внешнего расположения и только если его кодировка совпадает с кодовой страницей пользовательского компьютера. Если оба эти условия выполнены, текст отобразится правильно. Если выполняется только одно условие, то при форматировании текста следует использовать Юникод и управляющие последовательности символов Юникода. Для использования управляющей последовательности добавьте в кадр 1 на временной шкале следующий сценарий ActionScript 2.0:

this.createTextField("myText_txt", 99, 10, 10, 200, 25); 
myText_txt.text = "this is my text, \u00A9 2004";

Этот сценарий ActionScript создает текстовое поле и вводит текст с символом авторского права ©.

Кроме того, свойство useCodepage также позволяет использовать в SWF-файле кодовую страницу операционной системы. При экспорте SWF-файла из Animate текст по умолчанию экспортируется в Юникоде, а свойство System.useCodepage имеет в значение false. При отображении специального текста или при отображении текста на международных системах могут возникнуть проблемы, которые можно устранить применением системной кодовой страницы. Однако свойство System.useCodePage — это всегда последнее средство.

Чтобы воспользоваться кодовой страницей системы, разместите следующую строку кода ActionScript 2.0 в кадре 1 на временной шкале.

System.useCodepage = true;
<< need an AS3 example here as well. См.
dev/qa. >>

 Специальный символ отобразится, только если он есть в соответствующем шрифте на компьютере пользователя. Если в этом нет уверенности, то этот символ или шрифт следует внедрить в SWF-файл.

В приведенной ниже таблице перечислено несколько типовых управляющих последовательностей Юникод.

Описание символа

Управляющая последовательность Юникод

длинное тире ()

\u2014

знак регистрации (®)

\u00AE

знак авторского права (©)

\u00A9

торговый знак (™)

\u2122

символ евро ()

\u20AC

обратная косая черта (\)

\u005C

прямая косая черта (/)

\u002F

открывающая фигурная скобка ({)

\u007B

закрывающая фигурная скобка (})

\u007D

знак больше (<)

\u003C

знак меньше (>)

\u003E

звездочка (*)

\u002A

Тестирование скорости загрузки документов

Flash Player старается поддерживать заданную частоту кадров. Реальная частота кадров во время воспроизведения может быть на разных компьютерах различной. Если загружаемый документ достигает определенного кадра прежде, чем загружены требуемые для него данные, то воспроизведение приостанавливается до получения данных.

Для просмотра скорости загрузки в графическом представлении используется профилировщик пропускной способности, который наглядно показывает объем отправляемых для каждого кадра данных в соответствии с указанной скоростью модема.

 (Только для Animate) Профилировщик пропускной способности в Animate недоступен. Вместо него можно применить инструмент Adobe Scout в сочетании с Animate. Дополнительные сведения см. в разделе Использование Adobe Scout вместе с Animate CC.

При имитации скорости загрузки Animate использует типичное среднее значение производительности Интернета, а не точную скорость модема. Например, при имитации модема со скоростью 28,8 КБ/с Animate устанавливает реальную скорость в 2,3 КБ/с, чтобы отразить типичную производительность Интернета. Кроме того, профилировщик учитывает дополнительную поддержку по сжатию для SWF-файлов, которая уменьшает размер файла и повышает потоковую производительность.

При потоковой загрузке внешних SWF-, GIF- и XML-файлов и переменных с помощью вызовов ActioScript, например loadMovie и getUrl, данные передаются на скорости, установленной для потоковой передачи. Потоковая скорость основного SWF-файла уменьшается на величину, определяемую дополнительными запросами данных. Протестируйте документ на всех скоростях и на каждом типе компьютеров, которые планируется поддерживать. Это позволяет убедиться, что документ не слишком громоздок даже для самого медленного соединения и компьютера.

Кроме того, можно сформировать отчет по кадрам, которые замедляют воспроизведение, после чего оптимизировать их или удалить часть их содержимого.

Изменить параметры SWF-файла, созданные с помощью команд «Тестировать ролик» и «Тестировать монтажный кадр», можно с помощью команды «Файл» > «Параметры публикации».

Тестирование скорости загрузки

  1. Выполните одно из следующих действий.
    • Выберите «Управление» > «Тестировать монтажный кадр» или «Управление» > «Тест».

      Если тестируется монтажный кадр или документ, Animate публикует текущий выбор в виде SWF-файла в соответствии с параметрами, заданными в диалоговом окне «Параметры публикации». SWF-файл открывается в новом окне и немедленно начинает воспроизведение.

    • Выберите команду «Файл» > «Открыть», выберите SWF-файл.

  2. Выберите команду «Просмотр» > «Параметры загрузки», выберите скорость загрузки, чтобы определить потоковую скорость, которую имитирует Animate. Чтобы ввести пользовательское значение, выберите команду «Настроить».

  3. Чтобы увидеть диаграмму скорости загрузки во время просмотра SWF-файла, выберите команду «Просмотр» > «Профилировщик пропускной способности».

    В левой части профилировщика отображаются сведения о документе, его параметры, состояние, а также потоки, если они включены в документ.

    В правой части показан заголовок и диаграмма временной шкалы. Каждая полоска этой диаграммы представляет отдельный кадр документа. Размер полоски соответствует размеру кадра в байтах. Красная линия под заголовком временной шкалы указывает, возможна ли потоковая передача этого кадра в реальном времени при текущей скорости модема, заданной в меню «Управление». Если полоска заходит за красную линию, то документ будет ожидать загрузки этого кадра.

     (Только для Animate CC) Профилировщик пропускной способности недоступен в Animate CC. Вместо него можно применить инструмент Adobe Scout в сочетании с Animate. Дополнительные сведения см. в разделе Использование Adobe Scout вместе с Animate CC.

  4. Чтобы включить или отключить потоковую передачу, выберите команду «Просмотр» > «Имитировать загрузку».

    Если потоковую передачу отключить, то документ перезапускается без имитации подключения к сети.

    Примечание (только для Animate). Функция имитации загрузки в Animate недоступна.

  5. Щелкните мышью полоску на диаграмме, чтобы просмотреть параметры соответствующего кадра в окне слева и остановить документ.
  6. При необходимости настройте вид диаграммы. Для этого выполните одно из следующих действий.
    • Выберите пункт «Просмотр» > «Потоковая диаграмма», чтобы посмотреть, какие кадры вызывают задержку.

      В этом представлении по умолчанию попеременно отображаются светлые и темные блоки, представляющие кадры. Боковая сторона каждого блока показывает его сравнительный размер в байтах. В первом кадре хранится содержимое символа, поэтому он часто бывает больше остальных.

    • Выберите пункт «Просмотр» > «Покадровая диаграмма» для отображения размера каждого кадра.

      Это представление позволяет увидеть, какие кадры вызывают задержку потоковой передачи. Если блок кадра выходит за красную линию в диаграмме, это означает, что Flash Player останавливает воспроизведение до загрузки всего кадра.

  7. Чтобы вернуться в среду разработчика, закройте тестовое окно.

    После настройки тестовой среды с помощью профилировщика пропускной способности можно открыть любой SWF-файл непосредственно в тестовой среде. Файл открывается в окне Flash Player с профилировщиком пропускной способности и другими выбранными параметрами просмотра.

     (Только для Animate) Профилировщик пропускной способности в Animate недоступен. Вместо него можно применить инструмент Adobe Scout в сочетании с Animate. Дополнительные сведения см. в разделе Использование Adobe Scout вместе с Animate CC.

Создание сводного отчета

  1. Выберите пункт «Файл» > «Параметры публикации» и перейдите на вкладку Animate.

  2. Выберите «Составить отчет о размере».
  3. Нажмите кнопку «Опубликовать».

    Animate формирует текстовый файл с расширением .txt. (Если файл документа имеет имя myMovie.fla, то текстовый файл будет иметь имя myMovie Report.txt.) В отчете перечислены размеры каждого кадра, фигуры, текста, звука, видео и сценария ActionScript в кадре.

 Adobe

Получайте помощь быстрее и проще

Новый пользователь?

Adobe MAX 2024

Adobe MAX
— творческая конференция

С 14 по 16 октября очно в Майами-Бич и онлайн

Adobe MAX

Творческая конференция

С 14 по 16 октября очно в Майами-Бич и онлайн

Adobe MAX 2024

Adobe MAX
— творческая конференция

С 14 по 16 октября очно в Майами-Бич и онлайн

Adobe MAX

Творческая конференция

С 14 по 16 октября очно в Майами-Бич и онлайн