Справочник по Macromedia Flash

         

ActionScript



ActionScript

Язык сценариев ActionScript предназначен для создания в фильмах Flash интерактивных фильмов. Как и JavaScript, язык ActionScript является объектно-ориентированным языком программирования. В объектно-ориентированном сценарии информация объединяется в группы, называемые классами. Можно использовать классы, предлагаемые в ActionScript, или создавать собственные классы. Создаваемые трансформы класса, называемого объектом, можно править и использовать в различных сценариях. Для новою класса надо указать параметры (характеристики) и методы использования (типы) каждого объекта, аналогично тому, как это указывается для реальных объектов.

Например, человек имеет такие параметры, как пол, рост и цвет волос; и методы типа разговор, прогулка и т. д. В приведенном примере "человек" - это класс, а каждый индивидуальный человек - объект или трансформа этого класса. Объекты AclionScript могут содержать данные или могут быть представлены на Столе графически как фрагменты фильма.

Подробно эти термины рассматриваются в руководстве по ActionScript.



Использование основных процедур для навигации и интерактивных эффектов



Использование основных процедур для навигации и интерактивных эффектов

Основные процедуры панели Actions (Процедуры) позволяют управлять навигацией и создавать в фильме интерактивные эффекты. Flash создает необходимый код ActionScript в зависимости от процедур, выбранных пользователем.

Ниже перечислены основные процедуры панели Actions (Процедуры):

GOTO (перейти) - переводит воспроизводящую голоску к указанным кадру или сцене; play (воспроизвести) и stop (остановить) - соответственно, запускают и останавливают фильм; ToqqleHighQuality (включить высокое качество) - задает качество представления фильма; stopAllSoundM (остановить все звуки) ~ останавливает все звуки в фильме; GetURL (получить URL) - вызывает указанный LIRL; FSCOMMAMD - управляет Flash Player, который воспроизводит фильм; LoadMovie (загрузить фильм) и r?nioadMoviЈ (выгрузить фильм) - соответственно, загружают и выгружают дополнительный фильм; TellTarget (сообщить цель) - управляет другим фильмом и фрагментами фильмов; ifFrameloaded (если кадр загружен) - проверяет, загружен ли некоторый кадр; onMouseEvent (событие "наведение указателя") - назначает вызываемое мышью или клавиатурой событие для вызова процедуры.

Кроме того, процедура print (печатать) позволяет определять кадры фильма как распечатываемые.

О других процедурах, доступных в ActionScript, и о расширенной интерактивности см. в руководстве по ActionScript.



Использование панели Actions



Использование панели Actions

Панель Actions (Процедуры) позволяет создавать и редактировать процедуры для объекта или кадра, используя два различных режима редактирования. Можно применить предлагаемые в списке Toolbox (Набор инструментов) процедуры, перетащив их в нужное место, и с помощью кнопок изменить их порядок или удалить лишние. В нормальном режиме (Normal Mode) можно описывать процедуры, используя поля параметров (аргументов), которые предлагают вам допустимые аргументы. В экспертном режиме (Expert Mode) можно описывать и редактировать процедуры непосредственно в текстовом поле, подобно написанию сценария (макроса) в текстовом редакторе.

Информацию о настройках панели Actions и переключении режимов редактирования см. в руководстве по ActionScript.

Для того чтобы вызвать панель Actions (Процедуры), выберите команду Window (Окно) Þ Actions (Процедуры).

Выделяя кадр, кнопку или трансформу фрагмента фильма, вызовите панель Actions (Процедуры), причем для выделенного кадра название панели Actions (Процедуры) изменится на Object Actions (Процедуры объекта) (Рисунок 12.1), а для выделенной кнопки или фрагмента фильма - на Frame Actions (Процедуры кадра) (Рисунок 12.2).



Для того чтобы выбрать режим редактирования процедур:

При активной панели Actions (Процедуры) щелкните на стрелке в верхнем правом углу панели, чтобы вызвать всплывающее меню. Выберите во всплывающем меню Normal Mode (Нормальный режим) или Expert Mode (Экспертный режим).



Использование панели Actions в нормальном режиме



Использование панели Actions в нормальном режиме

В нормальном режиме пользователь создает процедуры, выбирая их в списке Toolbox (Набор инструментов) на левой стороне панели, который содержит следующие категории; Basic Actions (Основные процедуры), Actions (Процедуры), Operators (Операторы), Functions (Функции), Properties (Свойства) и Objects (Объекты). Категория Basic Actions (Основные процедуры) предлагает самые простые процедуры Flash и доступна только в нормальном режиме. Выбранные процедуры вносятся в список Actions (Процедуры) на правой стороне панели. Можно добавлять и удалять процедуры или изменять их порядок, а также вводить параметры (аргументы) для процедуры в нижней части панели Parameters (Параметры).

В нормальном режиме с помощью средств управления панели Actions (Процедуры) можно удалять или изменять порядок и параметры процедур. Эти средства управления особенно полезны для управления процедурами кадров или кнопок, состоящих из нескольких инструкций.

Для того чтобы выбрать процедуру:

Щелкните на категории Actions (Процедуры) в списке Toolbox (Набор инструментов). Дважды щелкните на процедуре или перетащите ее в правую часть списка Actions (Процедуры).

Для того чтобы использовать панель Parameters (Параметры):

Щелкните на треугольнике

в нижнем правом углу панели Actions (Процедуры), чтобы вызвать панель Parameters (Параметры). Выберите процедуру и введите новые значения в текстовые ноля параметров.

Для того чтобы вставить путь к фрагменту фильма:

Щелкните на кнопке Target Path (Путь) в нижнем правом углу панели Actions (Процедуры), чтобы вызвать диалоговое окно Target Path (Путь). Выберите фрагмент фильма из предложенного списка.

Информацию об использовании пути см. в ризд. "Управление другими фильмами и фрагментами фильма " этой главы.

Для того чтобы переместить процедуру вверх или вниз по списку:

Выделите процедуру в списке Actions (Процедуры). Переместите ее вверх или вниз в общем списке.

Для того чтобы удалить процедуру:

Выделите процедуру в списке Actions (Процедуры). Щелкните на кнопке Delete (Удалить).

Для того чтобы изменить размер списка Toolbox (Набор инструментов) или списка Actions (Процедуры), выполните один из следующих шагов:

перетащите вертикальную разделяющую строку, которая появляется между списком Actions (Процедуры) и списком Toolbox (Набор инструментов); дважды щелкните на разделяющей строке, чтобы закрыть список Toolbox (Набор инструментов); дважды щелкните на строке снова, чтобы еще раз открыть список, щелчками на кнопках Left Arrow (Левая стрелка) или Right Arrow (Правая стрелка) на разделяющей строке расширьте или сожмите список.

Когда список Toolbox (Набор инструментов) скрыт, то с помощью кнопки

Add (Добавить) по-прежнему можно получить доступ к его объектам.



Экспертный режим



Экспертный режим

Экспертный режим позволяет создавать процедуры, вводя кол ActionScript в текстовое поле на правой стороне панели или выбирая процедуры в списке Toolbox (Набор инструментов) слева.

Создавая сценарий, можно редактировать процедуры, указывать их параметры или же удалять непосредственно в текстовом поле так же, как если бы вы создавали сценарий в текстовом редакторе. Экспертный режим позволяет опытным пользователям редактировать сценарии JavaScript или VBScript н текстовом редакторе. Экспертный режим отличается от нормального режима следующими особенностями:

выделение пункта во всплывающем меню Add (Добавить) или в списке Toolbox (Набор инструментов) вводит этот пункт в редактируемую текстовую область в позицию указателя; никакие текстовые поля параметра не появляются; в панели кнопок работает только кнопка Add (Добавить); стрелки Up Arrow (Стрелка вверх) и Down Arrow (Стрелка вниз) не работают.

Подробную информацию об экспертном режиме можно нанти в руководстве по ActionScript.



Настройка событий мыши



Настройка событий мыши

Назначение процедуры кнопке автоматически назначает кнопке инструкцию MouseEvent (событие мыши), которую будет вызывать процедура.

Каждый обработчик (handler) начинается со слова Оn (на) и события, на которое обработчик (handler) отвечает.

Например:

on (Release) on (Keypress "<Space>") on (Rollover)

Параметр (Release) означает, что пользователь нажал и отпустил кнопку мыши.

В панели Actions (Процедуры) можно определить, какие именно события мыши будут вызывать процедуры кнопки.

Для того чтобы настроить события мыши:

Выделите кнопку, которой вы назначаете процедуру. В списке Toolbox (Набор инструментов) на левой стороне панели Actions (Процедуры) щелкните на списке Basic Actions (Основные процедуры), чтобы отобразить основные процедуры. Выберите одну из следующих настроек:

Процедуру ДЛЯ СобыТИЯ OnMouseEvent; процедуру в списке Basic Actions (Основные процедуры).

В панели Parameters (Параметры) для категории Event (События) выберите "горячую" клавишу или событие мыши, которые будут вызывать процедуру:

Press (Нажатие) - вызывает процедуру, когда кнопка мыши нажата, в то время как указатель наведен на кнопку; Release (Отпустить) - вызывает процедуру, когда кнопка мыши отпущена, в то время как указатель наведен на кнопку, т. е. когда выполнен обычный щелчок на кнопке (параметр по умолчанию); Release Outside (Отпустить вне) - вызывает процедуру, когда кнопка мыши отпущена, но указатель находится вне кнопки: Key Press (Нажатие клавиши) - вызывает процедуру, когда нажата указанная клавиша. Выбирая эту настройку, не забудьте указать клавишу в текстовом поле: Roll Over (Наведение) - вызывает процедуру, когда указатель наводится па кнопку; Roll Out (Уход) - вызывает процедуру, когда наведенный указатель выводится за пределы кнопки - уходит с нее; Drag Over (Перетаскивание по) - вызывает процедуру, когда кнопка мыши была нажата при наведенном на кнопку указателе, и затем указатель сначала ухолит с кнопки, а потом возвращается на нес; Drag Out (Перетаскивание из) - вызывает процедуру, когда кнопка мыши нажата при наведенном нa кнопку указателе, а затем указатель уведен с кнопки.

Назначьте кнопке любые дополнительные процедуры.

Подробную информацию относительно событий мыши см. в руководстве tin ActionScript. Для того чтобы протестировать процедуры кадра:

Выберите команду Control (Управление) Þ Enable Simple Frame Actions (Включить простые процедуры кадра). Выберите команду Control (Управление) Þ Test Movie (Тестировать фильм).



Назначение процедур кадрам



Назначение процедур кадрам

Если вы хотите, чтобы какие-то события возникали в определенном месте фильма (т. е. при достижении воспроизводящей головкой определенного кадра), назначьте процедуру этому кадру. Например, чтобы создать в фильме цикл между 10-м и 20-м кадрами, назначьте 20-му кадру фильма процедуру "перейти к 10-му кадру и продолжить воспроизведение". Удобно поместить все процедуры кадра в один слой, чтобы упростить их поиск и работу с ними. Кадры с процедурами помечаются во временной диаграмме строчной буквой "а" (Рисунок 12.4).

Как только процедура назначена, проверьте, работает ли она с помощью команды Control (Управление) Þ Test Movie (Тестировать фильм). Учтите, что большинство процедур не будет работать в режиме редактирования.



Назначение процедур объектам



Назначение процедур объектам

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

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

Назначая процедуру кнопке или фрагменту фильма, Flash автоматически вводит специальную функцию, называеглуго обработчиком (handler) - инструкцию OnMouseEvent для кнопок или инструкцию OnClipEvent ДЛЯ фрагмен-тов фильма. Обработчик управляет событием определенным образом и содержит группы инструкций ActionScript, которые запускаются при наступлении определенного события. Каждый обработчик (handler) начинается со слова on или onciipEvent и описания события, на которое обработчик и отвечает.

События - это действия, которые происходят в ходе воспроизведения фильма, например загрузка фрагмента фильма, или достижение воспроизводящей головкой заранее определенного кадра или нажатие пользователем клавиши на клавиатуре. Событие, которое будет вызывать процедуру, можно определить так, как описано в разделе "Настройка событий мыши" этой главы- Можно также определить событие фрагмента фильма, которое будет вызывать процедуру; см. руководство по ActionScripl.

Назначив процедуру, рекомендуется сразу проверить ее работу. Учтите, что в режиме редактирования работают только простые процедуры кадра типа Go То (Перейти) и Play (Воспроизведение). Следующие инструкции описывают" как настроить процедуры для объектов с помощью панели Actions (Процедуры) в нормальном режиме.

Информацию об использовании панели Actions в экспертном режиме можно найти в руководстве по ActionScript.


Для того чтобы назначить процедуру на фрагмент фильма или кнопку:

Выделите кнопку или трансформу фрагмента фильма и выберите команду Wndow (Окно) Þ Actions (Процедуры). Если выделена не трансформа кнопки, трансформа фрагмента фильма или кадр, или если выделение содержит несколько объектов, то панель Actions (Процедуры) будет затенена.

См. разд. "Назначение процедур кадрам " этой главы.

В списке Toolbox (Haбop инструментов) на левой стороне панели щелкните па списке Basic Actions (Основные процедуры), чтобы отобразить основные процедуры.

См. разд. "Использование основных процедур для навигации и интерактивные эффектов' данной главы.

Назначьте процедуру, выполнив один из следующих шагов:

дважды щелкните на процедуре в списке Basic Actions (Основные процедуры); перетащите процедуру из списка Basic Actions (Основные процедуры) слева в список Actions (Процедуры) на правой стороне панели (Рисунок 12.3); щелкните па кнопке Add (Добавить) и выберите процедуру во всплывающем меню; используйте горячие клавиши.


Окно Insert Target Path В группе



Рисунок 12.6. Окно Insert Target Path

В группе Notation (Примечание) выберите установленный iio умолчанию переключатель Dots (Точки) (аналогично JavaScript). Пользователи, хорошо знакомые с Flash 4, могут использовать косую черту, чтобы раз1ра-ничить путь к фрагменту фильма. В группе Mode (Режим) выберите представление иерархии трансформ фрагмента фильма:

Relative (Относительный) - показывает только трансформы фрагментов фильма, которые присутствуют в текущем кадре текущей временной диаграммы, и их дочерние трансформы. Префикс относится к текущей временной диаграмме (выбран по умолчанию); Absolute (Абсолютный) - показывает каждую трансформу фрагмента фильма в каждом кадре каждой сцены целого фильма. В этом режиме всегда предварительно указывается косая черта или приставка _root (или _level, что указывает, на какой уровень загружен фильм), а затем целевой путь.

Абсолютный режим показывает все трансформы в каждом кадре, но из-за сложности взаимодействий фрагмента фильма некоторые трансформы могут быть недоступны, когда процедура TellTarget (указать цель) выполнена.




Можно свободно переключаться между примечаниями, однако изменение режимов Relative (Относительный) и Absolute (Абсолютный), и наоборот, может отменить выделение фрагмента фильма.

Для этого:

Выделите фрагмент фильма в иерархическом дереве, при этом в текстовом поле Target (Цель) будет отображен путь к этому фрагменту. Нажмите кнопку ОК. В списке Toolbox (Набор инструментов) панели Actions (Процедуры) выберите любые дополнительные процедуры, которые буду инструктировать целевой фрагмент фильма о дальнейших процедурах.

Процедуры, вложенные в блок TellTarget (указать цель), относятся к целевой временной диаграмме.

Например:

tellTarqet (_root.plane) { atop() ; }



Остановка всех звуков



Остановка всех звуков

Для того чтобы остановить звуковой трек, не прерывая главный фильм, воспользуйтесь процедурой StopAllSounds (остановить все звуки). Учтите, что эта процедура не уменьшает громкость. Процедура stopAllSounds (остановить все звуки) воздействует на весь фильм, воспроизводящийся во Flash Player. Потоковые звуки возобновятся одновременно с продолжением воспроизведения; событийные звуки не возобновятся.

Об управлении звуками см. разд. "Запуск и остановка звуков в ключевых кадрах" гл. 6. Для того чтобы остановить все звуки в фильме:

Выберите кадр, трансформу кнопки или трансформу фрагмента фильма, которой назначена процедура. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур, и выберите в нем пункт Stop All Sounds (Остановить все звуки).

При этом Flash вводит следующий код ActionScript в список Actions (Процедуры):

StopAllSounds () ;



Отладка качества фильма



Отладка качества фильма

При сглаживании требуется более мощный процессор для обработки каждого кадра фильма перед выводом его на экран, поэтому слабые процессоры могут замедлить воспроизведение. Есть возможность ускорить воспроизведение, отключив сглаживание. Для того чтобы включить или отключить сглаживание фильма, воспользуйтесь процедурой ToggleHighQuality (переключить высокое качество). Учтите, что эта процедура влияет на все фильмы, воспроизводимые во Flash Player. Этим способом нельзя регулировать качество воспроизведения отдельного фильма или фрагмента фильма во Flash Player. Процедура ToggleHighQuality (переключить высокое качество), назначенное кнопке, позволяет посетителям регулировать качество представления фильма самостоятельно в зависимости от возможностей их компьютеров. Эта процедура включает или выключает сглаживание, т. е. первым щелчком мыши сглаживание включается, а повторным щелчком - выключается.

Об оптимальном соотношении скорости и качества представления фильма см. описание параметра QUALITY в гл. 14.

Для того чтобы настроить скорость и качество представления фильма:

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

Выделение фрагмента фильма настраивает скорость представления фильма; выделение кнопки настраивает качество представления фильма.

Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на списке Basic Actions (Основные процедуры), чтобы отобразить основные процедуры и выбрать пункт Toggle High Quality (Переключить высокое качество).

При этом Flash создает в списке Actions (Процедуры) следующий код ActionScript:

ToggleHighQuality () ;



Панель и вкладка Object Action Рис 12.2Панель и вкаладка Frame Action



Рисунок 12.1 Панель и вкладка Object Action


Рис 12.2. Панель и вкаладка Frame Action




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



Переход к иному URL



Переход к иному URL

Для того чтобы загрузить в окно браузера документ с определенного URL или передать переменные другому приложению на определенный URL, примените процедуру GetURL. Переменные сохраняют имена, которые могут использоваться в сценариях. Например, можно послать переменную сценарию CGI для обработки точно так же, как анкету HTML, но учтите, что посылать можно только переменные текущего фильма. Как правило, процедура GetURL применяется для загрузки страниц Web, но ее можно также использовать в проекторе Flash, чтобы открывать окно браузера автоматически и отображать указанный URL.

Для проверки этой процедуры необходимо, чтобы требуемый файл находился в указанном местоположении и чтобы абсолютный URL был доступен по сети (например, http: // www.myserver.com /).

О передаче переменных см. руководство по ActionScript. Для того чтобы перейти к URL:

Выделите кадр, трансформу кнопки или трансформу фрагмента фильма, которой вы предполагаете назначить процедуру. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать основные процедуры, и выберите пункт GetURL. В панели Parameters (Параметры) укажите URL, с которого надо получить документ. Учтите следующие советы:

используйте либо относительный путь типа mypage.htnu или абсолютный путь типа http:///wvw.mydomain.com/mypage.html.

Относительный путь - сокращенная версия полного адреса; при этом адрес одного файла описывается относительно другого и указывает Flash переместиться вверх и вниз по иерархии файлов/папок/директории, начиная с того файла, который содержит инструкцию GetURL. Абсолютный путь - полный адрес, определяющий имя сервера, на котором находится файл, путь к нему (иерархию файлов/папок/директорий и т. д.) и собственно имя файла,

для того чтобы получить URL на основе значения выражения, выберите пункт Expression (Выражение) и введите выражение, описывающее местоположение URL.


Например, следующая инструкция указывает, что "URL" - значение переменной DynamicURL:

GetURL (DynamicURL);

О написании выражений см. руководство по ActionScript.

Для Window (Окно) следующим образом укажите окно или фрейм HTML, в который документ будет загружен:

выберите одно из зарезервированных имен цели:

_self - документ загружается в текущий кадр в текущем окне;

_blank - документ загружается в новое окно;

_parent - документ загружается в родительский фрейм текущего кадра;

_top - документ загружается в верхний фрейм в текущем окне.

введите имя определенного окна или фрейма, если он имеет особое имя в файле HTML; выберите пункт Expression (Выражение) и введите выражение, которое описывает местоположение окна или кадра.

Для Variable (Переменная) выберите метод пересылки переменных для загруженного фильма на указанный URL:

выберите пункт Send Using Get (Послать методом GET), чтобы пересылать переменные отдельно от URL, в виде длинных строк в отдельном заголовке; это позволит посылать большее количество переменных и отправлять полученную из анкеты информацию по почте сценарию CGI на сервере; выберите Don't Send (He посылать), чтобы не посылать никакие переменные.

Ваш кол будет выглядеть следующим образом:

GetURL ("раде2.html","blank") ;

где процедура GetURL загружает документ HTML в новое окно браузера.


Переход к кадру или сцене



Переход к кадру или сцене

Для перехода к определенному кадру или сцене фильма предназначена процедура GOTO (перейти).

Когда воспроизведение фильма переходит к указанному кадру, можно продолжить воспроизведение с нового кадра (установка по умолчанию) или остановить его на этом кадре. Воспроизведение также может переходить к указанной сцене.

Для того чтобы перейти к кадру или сцене:

Выделите кадр, трансформу кнопки или трансформу фрагмента фильма, которой назначена процедура. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы в списке основных процедур выбрать пункт Go To (Перейти).

При этом Flash вставит процедуры GOTO (перейти) и play (воспроизвести) в список Actions (Процедуры).

Для того чтобы после перехода воспроизведение продолжалось, оставьте процедуры GOTO (перейти) и Рlaу (воспроизвести) выделенными в панели Parameters (Параметры). Для того чтобы фильм в указанном кадре останавливался, отмените выделение в панели Parameters (Параметры) процедур GOTO (перейти) и play (воспроизвести). При этом процедуры изменятся на GOTO (перейти) и Stop (остановить). В панели Parameters (Параметры) во всплывающем меню Scene (Сцена) укажите сцену, в которую должно перейти воспроизведение - Current Scene (Текущая сцена) или Named Scene (Сцена, имеющая собственное имя) - чтобы определить в этой сцене кадр, с которого начнется воспроизведение, или укажите Next (Следующий) или Previous (Предыдущий), чтобы после перехода воспроизведение началось с первого кадра сцены. В панели Parameters (Параметры) во всплывающем меню Type (Тип) выберите кадр предназначения:

Next Frame (Следующий кадр) или Previous Frame (Предыдущий кадр); Frame Number (Номер кадра). Frame Label (Ярлык кадра) или Expression (Выражение) позволяет определить кадр. Выражение - любая часть инструкции, создающая значение типа "1+1".

Если на шаге 6 вы выбрали для кадра настройку Frame Number (Номер кадра). Frame Label (Ярлык кадра) или Expression (Выражение), то укажите номер кадра, ярлык кадра или выражение, которое определяет номер кадра или ярлык.

Следующая инструкция задает кадр, который находится на пять кадров раньше, чем кадр, который содержит процедуру:

GotoAndStop (_currentframe +5);

О написании выражений см. руководство по ActionScript.



Создание интерактивных фильмов



Создание интерактивных фильмов

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

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

Процедуры для кнопок, фрагментов фильма или кадров настраиваются в панели Actions (Процедуры).

Создавая процедуры при помощи средств панели Actions (Процедуры) в обычном режиме (normal mode), вы избежите необходимости писать самостоятельно код ActionScript; если же вы имеете достаточный опыт, то можете написать собственный сценарий. Сценарии могут состоять из отдельной инструкции, описывающей такое действие, как, например, остановка воспроизведения; сценарий может состоять из ряда инструкций, типа проверки выполнения некоторого условия и запуска некоторых процедур. Создание многих сценариев не требует большого опыта программирования; другие предполагают летальную проработку и потому требуют знакомства с языками программирования.

Информацию о создании сложных сценариев можно найти в руководств по ActionScript.



Списки Toolbox и Actions в панели Frame Actions



Рисунок 12.3. Списки Toolbox и Actions в панели Frame Actions




Если выбран фрагмент фильма, то Flash автоматически вставляет код OnClipEvent и процедуру, которую вы выбрали в списке Actions (Процедуры). Если же выбрана кнопка, то Flash автоматически вставляет код onMouseEvent, чтобы при наступлении этого события была вызвана выбранная процедура.

Для того чтобы показать панель Parameters (Параметры), щелкните на треугольнике в нижнем правом углу панели Actions (Процедуры). Выберите процедуру и введите новые значения в текстовые поля Parameters (Параметры).

Параметры изменяются в зависимости от процедуры, которую вы выбрали, Например, но умолчанию параметр события On clip - Load (загрузка).

Повторите шаги 3 и 4, чтобы назначить дополнительные процедуры по мере необходимости.



Список процедур в панели Frame



Рисунок 12.5. Список процедур в панели Frame Actions

Для того чтобы указать фрагмент фильма, которым нужно управлять, щелкните на кнопке

Insert Target Path (Вставить путь к цели) в нижнем правом углу панели Actions (Процедуры).


При этом в открывшемся диалоговом окне Insert Target Path (Вставить путь к цели), показанном на Рисунок 12.6, будет отображена иерархия текущего фрагмента фильма. С помощью данного диалогового окна укажите путь для поля Target (Цель) в панели Parameters (Параметры).





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



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

Для того чтобы сделать недоступными процедуры, содержание для которых еще не загружено, используйте процедуру ifFrameLoaded (если кадр загружен). Создайте начальную анимацию, которая будет воспроизводиться, пока загружается остальной фильм. Процедура ifFrameLoaded (если кадр загружен) полезна для проверки загрузки основного файла (типа растра или звука). Можно также использовать СВОЙСТВО _framesLoaded (в пределах процедуры if), чтобы проверить доступность содержания определенного кадра. С помощью процедуры или свойства можно запустить простую анимацию, пока остальная часть фильма загружается на локальный компьютер; в обоих случаях проверяется доступность для воспроизведения содержания определенного кадра. Как правило, процедура ifFrameLoaded (если кадр загружен) используется как процедура кадра, но она же может использоваться как процедура кнопки. Для проверки выполнения УСЛОВИЯ IfFrameLoaded (если кадр загружен) используется настройка Streaming (Поток) для команды Test Movie (Тестировать фильм), при этом кадры загружаются с Web-сайта как бы потоком.

См. разд. "Тестирование загрузки фильма" гл. 14, Для того чтобы проверить, загружен ли кадр:

Выделите кадр, трансформу кнопки или трансформу фрагмента фильма, которой вы предполагаете назначить процедуру. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур, и выберите пункт If Frame Is Loaded (Если кадр загружен). В панели Parameters (Параметры) для Scene (Сцена) выберите сиену, содержащую желательный кадр: укажите опцию Current Scene (Текущая сцена) или имя сцены. Для настройки Type (Тип) выберите Frame Number (Номер кадра). Frame Label (Ярлык кадра) или Expression (Выражение). Для настройки Frame (Кадр) определите кадр, который загрузится, прежде чем будет вызвана процедура. Укажите Frame Number (Номер кадра), Frame Label (Ярлык кадра) или Expression (Выражение), аналогично инструкции на шаге 5. Выберите процедуру, которая должна выполниться, когда будет загружен определенный кадр. Flash введет следующий код ActionScript в список Actions (Процедуры):


IfFrameLoaded (100) { GotoAndPlay (10); }

Для того чтобы применить процедуру ifFrameLoaded (если кадр загружен) для воспроизведения короткой анимации при загрузке основного фильма:

Создайте короткий цикл анимации в начале фильма. Самое простое - создать цикл, который показывает сообщение "Фильм загружается..." При помощи процедуры ifFrameLoaded (если кадр загружен) создайте процедуру кадра, которая переключит воспроизведение фильма от циклической начальной анимации к основному фильму, когда все кадры будут загружены.

Например, для фильма с 30 кадрами, в начале которого расположен анимированный цикл из 2 кадров, требуется следующая процедура в первом кадре:

IfFrameLoaded (30) { GotoAndPlay (3);

Для завершения примера назначьте следующую процедуру второму кадру, чтобы повторно начать воспроизведение в Кадре 1:

GotoAndPlay (1);

Когда загружается кадр, указанный в процедуре ifFrameLoaded (если кадр загружен), воспроизведение фильма переходит ко второму кадру и продолжает воспроизводить фильм с третьего кадра. Для того чтобы использовать свойство _framesloaded в процедуре для воспроизведения во время загрузки фильма короткого анимированного цикла;

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

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

if(_framesloaded--100) { GotoAndPlay (3) ; }else { GotoAndPlay (1); }

Подробную информацию о свойстве _framesloaded CM. в руководстве по ActionScript.


Управление другими фильмами и фрагментами фильма



Управление другими фильмами и фрагментами фильма

Можно управлять фрагментом фильма или фильмом, который был загружен процедурой LoadMovie (загрузить фильм), указывая фрагмент фильма.

Вы назначаете процедуры кадру, кнопке или фрагменту фильма (диспетчеру), которые будут управлять фрагментом фильма, и затем указываете фильм или фрагмент фильма, который принимает процедуру (он будет называться целевым фильмом или целевым фрагментом фильма). Управлять фильмом или фрагментом фильма можно при помощи основной процедуры TeliTarqet (назначить цель). Или же можно и с пользовать процедуру with (с помощью), чтобы передать повторяющиеся процедуры одной цели, не адресуя целевой фрагмент фильма в каждом случае.

Для того чтобы управлять фильмом или фрагментом фильма, диспетчеру необходимо следующее!

должна быть определена цель, а именно - временная диаграмма цели, на которой будет выполнена процедура. Можно использовать диалоговое окно Insert Target Path (Указать путь к цели), чтобы указать фрагмент фильма: фрагмент фильма, который указан как цель, должен иметь собственное имя трансформы фрагмента фильма, которая позволяет находить ту цель в сценариях. Для того чтобы присвоить имя трансформе фрагмента фильма, используйте панель Instance (Трансформа), вызываемую командой Window (Окно) Þ Panels (Панели) Þ Instance (Трансформа), временная диаграмма фрагмента фильма должна быть на Столе, чтобы ее можно было указать как цель. Например, если из фрагмента Фильма А в кадре 5 требуется передать команду фрагменту Фильма Б на выполнение какой-то процедуры, то к моменту воспроизведения этого кадра Фрагмент Б должен уже воспроизводиться.

Для того чтобы управлять фрагментом фильма:

Выберите кадр, трансформу кнопки или трансформу фрагмента фильма - то, чему будет назначена процедура. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур (рис- 12.5), и выберите пункт Tell Target (Назначить цель).



Управление Flash Player



Управление Flash Player

Для управления Flash Player используется процедура FSCOMMAND.

Можно также использовать эту процедуру, чтобы посылать сообщения приложению, поддерживающему Flash Player - например, JavaScript, браузеру, Director, Visual Basic, Visual C++ и другим приложениям, поддерживающим средства ActiveX.

Для того чтобы управлять воспроизведением фильма:

Выделите кадр, трансформу кнопки или трансформу фрагмента фильма, которой назначена процедура. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на списке Basic Actions (Основные процедуры), чтобы вызвать основные процедуры и выберите пункт FSCOMMAND. В панели Parameters (Параметры) выберите настройку управления командами всплывающего меню Flash Player:

выберите процедуру Quit (выйти), чтобы закрыть проектор фильма; выберите процедуру Ехес (выполнить), чтобы запустить приложение и проекторе. В текстовое поле Arguments (Аргументы) введите путь к приложению; выберите процедуру Fuillscreen [True/False], чтобы управлять видом проектора. Введите в текстовое поле Arguments (Аргументы) значение True для полноэкранного представления, или False для нормального представления; выберите процедуру Allowscale [True/False], чтобы управлять размером фильма. Введите в текстовое поле Arguments (Аргументы) значение True, чтобы оставить возможность изменять размер анимации, или значение False, чтобы представлять анимацию без возможности масштабирования; выберите процедуру showmenu [True/False), чтобы управлять пунктами всплывающего меню. Введите в текстовое поле Arguments (Аргументы) значение True, чтобы правым щелчком мыши можно было вызвать полный набор пунктов меню, или значение False, чтобы скрыть строку меню.

Можно также указать настройки в текстовых полях Commands (Команды) или Arguments (Аргументы), а также вводить выражения.

Подробную информацию см. в руководстве по ActionScript.



Вид кадров, содержащих процедуры, в окне Timeline



Рисунок 12.4. Вид кадров, содержащих процедуры, в окне Timeline




Ниже описывается, как назначить процедуры кадрам с помощью панели Actions (Процедуры) в нормальном режиме.

О работе с панелью Actions в экспертном режиме рассказано в руководстве па ActionScript.

Для того чтобы назначить процедуру ключевому кадру:

Выделите ключевой кадр во временной диаграмме и выберите команду Window (Окно) Þ Actions (Процедуры).

Если выделенный кадр не является ключевым кадром, то процедура будет назначена предыдущему ключевому кадру. Если выделен не кадр или если выделено несколько кадров, то панель Actions (Процедуры) будет затенена.

См. разд. "Назначение процедур объектам" этой главы.

В списке Toolbox (Набор инструментов) на левой стороне панели щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур. Назначьте процедуру, выполнив один из следующих шагов:

дважды щелкните на соответствующем пункте в категории Basic Actions (Основные процедуры) в списке Toolbox (Набор инструментов); перетащите процедуру из списка Toolbox (Набор инструментов) слева в список Actions (Процедуры) на правой стороне панели; щелкните на кнопке Add (Добавить) и выберите инструкцию во всплывающем меню; используйте горячие клавиши.

Вызовите панель Parameters (Параметры), щелкнув на треугольнике в нижнем правом углу панели Actions (Процедуры). Выберите процедуру и введите для нее новые значения в текстовые поля Parameters (Параметры). Параметры изменяются в зависимости от выбранной процедуры. Повторите шаги 3 и 4, чтобы назначить дополнительные процедуры по мере необходимости.

Для того чтобы протестировать процедуру кадра в сцене, выберите команду Control (Управление) Þ Test Movie (Тестировать фильм).



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



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

При запуске фильма воспроизводятся последовательно все кадры до конца, если нет иных указаний. Можно останавливать или запускать фильм, используя процедуры Stop (остановка) и play (воспроизвести), например, остановить фильм перед переходом к следующей сцене. Запустить воспроизведение фильма снова можно процедурой play (воспроизвести). Процедуры Stop (остановка) и play (воспроизвести) наиболее часто используются для управления фрагментами фильма кнопками напели Controller (Панель воспроизведения) или для управления главной временной диаграммой. Фрагмент фильма, которым иы хотите управлять, должен иметь собственное имя как трансформа, его следует указать, он должен присутствовать во временной диаграмме.

См. разд, "Управление другими фильмами и фрагментами фильма данной главы.

Для того чтобы запустить или остановить фильм:

Выберите кадр, трансформу кнопки или трансформу фрагмента фильма, которым вы назначите процедуру. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур и выбрать пункт Stop (Остановка).

При этом Flash вставляет в список Actions (Процедуры) следующий код ActionScript:

onClipEvent (Load) { stop () ; }

где инструкция onClipEvent (Load) указывает, что при загрузке фильма Flash должен остановить фильм.

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

Для того чтобы воспроизвести фрагмент фильма:

Выделите фрагмент фильма, который хотите воспроизвести, или выберите кнопку, которая управляет воспроизведением. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basil Actions (Основные процедуры), чтобы вызвать список основных процедур, и выберите пункт Play (Воспроизведение).

При этом Flash вводит в список Actions (Процедуры) следующий код ActionScript:

On (Release){ Play () ; }

где инструкция On (Release) указывает, что когда кнопка будет отпущена, Flash запустит воспроизведение фильма.



Загрузка и выгрузка дополнительного фильма



Загрузка и выгрузка дополнительного фильма

Для того чтобы воспроизводить дополнительный фильм, не закрывая Flash Player, или чтобы переключиться между фильмами, не загружая другой документ HTML, используйте процедуру LoadMovie (за1рузить фильм). Процедура UnloadMovie (выгрузить фильм) удаляет фильм, предварительно .загруженный процедурой LoadMovie (загрузить фильм).

Вот некоторые типовые применения процедуры LoadMovie (загрузить фильм):

воспроизведение последовательности баннеров, которые являются SWF-файлами. При этом процедура LoadMovie (загрузить фильм) помещается в конец каждого SWF-файла и загружает следующий фильм-баннер; организация ветвящегося интерфейса, который позволяет пользователю выбрать один из нескольких SWF-файлов; создание навигационного интерфейса с расположенными на нулевом уровне средствами управления, которые позволяют загрузить другие уровни. Загрузка уровней дает более гладкие переходы, чем загрузка новых страниц HTML в браузере.

Для того чтобы загрузить фильм:

Выберите калр, трансформу кнопки или трансформу фрагмента фильма, которой вы назначите процедуру. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур, и выберите пункт Load Movie (Загрузить фильм). В панели Parameters (Параметры) укажите для URL абсолютный или относительный адрес загружаемого SWF-файла.

Для использования во Flash Player или для тестирования во Flash все SWF-файлы должны быть сохранены в одной папке и указаны в списке как имена файлов без указания папки или диска.

Для Location (Местоположение) выберите пункт Level (Уровень) или Target (Цель) во всплывающем меню. Если вы выбрали Level (Уровень), то введите номер уровня следующим образом:

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

(Для поддержки фильма и обновления значений переменных используйте процедуру Load Variables (загрузка переменных);


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

Об уровнях и целях см. руководства по ActionScript.

Если для настройки Location (Местоположение) выбрана опция Target (Цель), то укажите фрагмент фильма, который будет заменен загружаемым фильмом.

Загруженный фильм унаследует положение, поворот и размер замещенного фрагмента фильма. Верхний левый угол загруженного фильма будет помещен в точку регистрации замещаемого фрагмента фильма (обозначенную тонким перекрестьем).

Для Variable (Переменная) выберите метод пересылки переменных загружаемому фильму в местоположение, указанное в текстовом поле URL:

выберите Send Using Get (Переслать методом GET), чтобы добавить небольшое количество переменных в конец URL. Эту настройку можно использовать, например, чтобы переслать значения переменных из фильма Flash сценарию CG1 на сервер; выберите Send Using Post (Переслать методом рокт), чтобы переслать переменные отдельно от LJRL в виде длинных строк в отдельном заголовке. Этот метод позволяет посылать большее количество переменных, а также пересылать полученную из анкет информацию сценарию CG1 на сервер. Этим методом, например, можно пересылать переменные сценарию CG1, который генерирует SWF-файл; выберите Don't Send (Не пересылать), чтобы не пересылать переменные.

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

LoadMovie ("someFile.cgi", О, "GET");

где "someFile.cgi" генерирует фильм Flash в формате файла SWF.



Для того чтобы выгрузить фильм из окна фильма Flash:

Выделите кадр, трансформу кнопки или трансформу фрагмента фильма, которой вы предполагаете назначить процедуру. Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Basic Actions (Основные процедуры), чтобы вызвать список основных процедур, и выберите пункт Unload Movie (Выгрузить фильм). Для Location (Местоположение) выберите одну из следующих настроек во всплывающем меню:

для загруженного фильма выберите пункт Level (Уровень) и укажите, с какого уровня вы хотите выгрузить фильм; для того чтобы указать выгружаемый фильм, выберите опцию Target (Цель) и введите путь к фильму, который надо выгрузить. Можно ввести выражение, по которому будет рассчитываться нужный уровень.

Например:

UnloadMovie (3);

Эта инструкция указывает выгрузить фильм с уровня 3.

Для того чтобы протестировать процедуры LoadMovie (загрузить фильм) или UnloadMovie (ВЫГРУЗИТЬ фиЛЬМ):

Если вы тестируете процедуру LoadMovie (загрузить фильм), то сначала удостоверьтесь, что загружаемый фильм находится по указанному пути. Если путь указан как абсолютный адрес, то он должен быть доступен. Выберите команду Control (Управление) Þ Test Movie (Тестировать фильм).

Процедуры LoadMovie (загрузить фильм) и UnloadMovie (выгрузить фильм) не работают в режиме редактирования.


Добавление процедуры Print



Добавление процедуры Print

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

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

Для того чтобы назначить процедуру print кнопке, кадру или фрагменту фильма:

Откройте фильм, кадры которого вы хотите сделать доступными для печати. Выделите во временной диаграмме ключевой кадр, который будет доступен для печати, и удостоверьтесь, что он имеет ярлык #p.

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

Выделите кадр, трансформу кнопки или трансформу фрагмента фильма, которой будет назначена процедура print.

Каждая процедура print делает доступной для печати только одну временную диаграмму.

Выберите команду Window (Окно) Þ Actions (Процедуры), чтобы вызвать панель Actions (Процедуры). В списке Toolbox (Набор инструментов) щелкните на категории Actions (Процедуры) и в появившемся списке двойным щелчком выберите пункт Print (Печать).

При этом Flash вставит пункт Print (Печать) в список Actions (Процедуры).

Для процедуры print укажите, как следует печатать кадр - в векторном или в растровом виде.

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


Укажите, какую из временных диаграмм надо распечатать, задав значение для параметра Location (Местоположение);

Level (Уровень) - укажите номер уровня главной временной диаграммы или загруженного фильма. Можно также использовать выражение: для этого выберите опцию Expression (Выражение) и введите выражение;

Об уровнях см. разд. "Загрузка и выгрузка дополнительном фильма " гл. 12.

Target (Цель) - укажите путь к целевому фильму или щелкните на кнопке Target Path (Целевой путь) в нижнем нравом углу и выберите целевой фильм в диалоговом окне Target Path (Целевой путь). Это можно сделать при помощи выражения, вводимого в поле Expression (Выражение).

Установите границы печати, выбрав настройку Bounding Box (Область ограничения):

Мах (Максимум) - использует композитную область ограничения, определяемую наложением областей печати всех кадров во временной диаграмме; Frame (Кадр) - в качестве области печати использует область ограничения объектов в каждом распечатываемом кадре временной диаграммы, изменяя область печати для каждого кадра, а также изменяя размер объектов, соразмеряя их с областью печати. Эта настройка рекомендуется в том случае, если, например, в каждом кадре находятся объекты разного размера, но требуется, чтобы каждый объект заполнял всю печатную страницу.

Указанные для процедуры print настройки Мах (Максимум) и Frame (Кадр) отменяют ярлыки кадров #b для областей ограничения.


Изменение печатаемого цвета фона



Изменение печатаемого цвета фона

Flash Player показывает набор цветов фона в диалоговом окне Movie Properties (Свойства фильма). Изменить цвет фона можно только для тех кадров, которые будут распечатаны, помещай цветной объект на самый нижний слой распечатываемой временной диаграммы.

Для того чтобы изменить цвет печатаемого фона:

Разместите в самом нижнем слое временной диаграммы заполненную фигуру, которая будет занимать весь Стол. Выделите фигуру и выберите команду Modify (Изменить) Þ Movie (Фильм). Выберите цвет для фона распечатки.

Таким образом изменяется цвет фона всего фильма, в том числе фон фрагментов фильма и загруженного фильма.

Выполните одно из следующих действий:

удостоверьтесь, что кадр, в который вы (поместили фигуру, указан как распечатываемый - это нужно, чтобы распечатать данный цвет как фон фильма;

См. разд. "Создание распечатываемых кадров" данной главы.

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



Определение области печати



Определение области печати

По умолчанию областью печати является все представленное на Столе содержание фильма. Любой объект, выходящий за пределы Стола, отсекается и не распечатывается. Загруженный фильм использует как область печати собственный размер Стола, а не размер Стола главного фильма. Кроме этого, можно установить три различных области печати:

для контекстного меню Flash Player или для процедуры print можно указать ограниченную область печати для всех кадров фильма, выделив объект в одном кадре. Эта настройка полезна, например, если требуется распечатать лист данных с Web-сайта; процедура print допускает использование композитной области печати для распечатываемых кадров во временной диаграмме, чтобы, например, распечатывать несколько кадров, имеющих общую точку регистрации. Для того чтобы использовать композитную область печати, выберите настройку Мах (Максимум) в параметрах процедуры print; процедура print позволяет изменять область печати каждого кадра, устанавливая размеры объектов в соответствии с областью печати - например, чтобы объекты различных размеров в каждом кадре заполняли всю область печати. Для того чтобы изменить область печати в кадре, используйте настройку Frame (Кадр) в параметрах процедуры print.

Для того чтобы определить область печати:

Откройте фильм. Выделите кадр, для которого не указан ярлык #р. Выберите следующий кадр после кадра, помеченного ярлыком #р. Создайте на Столе фигуру, размеры которой соответствуют области печати. Выделите во временной диаграмме кадр, содержащий фигуру, которую вы будете использовать для области ограничения. Активизируйте панель Frame (Кадр), выполнив команду Modify (Изменить) Þ Frame (Кадр). В панели Frame (Кадр) введите #b, чтобы определить выбранную фигуру как область ограничения для области печати.

Учтите, что во временную диаграмму можно ввести только один ярлык #b. Эта настройка аналогична настройке области ограничения процедуры Print.



Отключение печати



Отключение печати

Если вы хотите сделать недоступными для печати кадры главной временной диаграммы, назначьте кадру ярлык !#р. Ярлык кадра !#р запрещает распечатку всего фильма и затеняет команду Print (Печать) в контекстном меню Flash Player. Кроме того, контекстное меню Flash Player можно вообще удалить. Запретив печать, вы все еще имеете возможность печатать кадры, используя команду Print (Печать) браузера. Поскольку эта команда относится к браузеру, то вы не можете управлять ею или отключать ее из Flash.

Для того чтобы запретить печать в контекстном меню Flash Player и затенить команду Print (Печать):

Откройте иди сделайте активным публикуемый фильм. Активизируйте панель Frame (Кадр), выполнив команду Modify (Изменить) Þ Frame (Кадр). Выберите первый ключевой кадр в главной временной диаграмме. В панели Frame (Кадр) введите для кадра в поле Label (Ярлык) ярлык !#Р, чтобы затенить команду Print (Печать) а контекстном меню Flash Player.

Достаточно указать только один ярлык !#р, чтобы затенить команду Print (Печать) в контекстном меню Flash Player.

Для того чтобы запретить распечатку, удалив контекстное меню Flash Player

Откроите или сделайте активным публикуемый фильм. Выберите команду File (Файл) Þ Publish Settings (Настройки публикации). Выберите вкладку HTML и отмените выделение пункта Display Menu (Показывать меню). Нажмите кнопку ОК.

О настройках публикации см. разед. "Публикация фильма Flash " гл. 14.



для каждого кадра, который



Рисунок 13.1. Панель Frame

Повторите шаги 3 и 4 для каждого кадра, который хотите определить как доступный для печати,






Печать из контекстного меню Flash Player



Печать из контекстного меню Flash Player

При помощи команды Print (Печать) контекстного меню Flash Player можно распечатать кадры любого фильма Flash.

Команда Print (Печать) контекстного меню не может вывести на печать цветовые эффекты и эффект прозрачности, а также не может печатать кадры из других фрагментов фильма; такие возможности печати дает процедура print.

Для того чтобы распечатать кадры фильма, используя команду Print (Печать) контекстного меню Flash Player:

Откройте фильм, кадры которого будут распечатаны. Команда Print (Печать) печатает кадры, имеющие ярлык #b, используя как область печати Стол или указанную область ограничения.

Если не указать для печати определенные кадры, то будут распечатаны все кадры в главной временной диаграмме фильма.

Выберите команду File (Файл) Þ Publish Preview (Просмотр публикации) Þ Default (По умолчанию) или нажмите клавишу <F12>, чтобы просмотреть фильм Flash в браузере. Щелкните правой кнопкой мыши (Windows) или левой кнопкой, удерживая клавишу <Cmd> (Macintosh), на фильме Flash в окне браузера, чтобы вызвать контекстное меню Flash Player. Выберите команду Print (Печать) контекстного меню Flash Player, чтобы вызвать диалоговое окно Print (Печать). В Windows укажите диапазон кадров для печати:

All (Все) - печатать все кадры фильма, если ни один кадр не помечен; Pages (Страницы) - диапазон, из которого будут распечатаны кадры, имеющие ярлыки; Selection (Выделение) - распечатать текущий кадр.

На Macintosh в диалоговом окне Print (Печать) выберите:

All (Все) - распечатать текущий кадр, если ни один кадр не помечен, или чтобы распечатать все помеченные кадры; From (От) - диапазон, в котором следует выбрать распечатываемые кадры, имеющие ярлыки.

Выберите другие настройки печати, соответствующие свойствам вашего принтера. Нажмите кнопку OK (Windows) или Print (Macintosh).



Поддержка принтеров



Поддержка принтеров

Flash Player может печатать как на PostScript, гак и на He-PostScript-прин-теры. Список поддерживаемых платформ печати можно найти на Web-сайте Macromedia http://www.miacromedia.com/software/flash/open/webprinting/faq.html.



Подготовка фильма для печати



Подготовка фильма для печати

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

отрегулируйте макет страницы во всех кадрах, которые предполагаете сделать доступными для печати, чтобы обеспечить необходимые вид и качество распечатки. Flash Player печатает все фигуры, символы, растры, текстовые блоки и текстовые поля. Уровни фильма Flash при печати не компонуются; для установки размеров, масштаба и выравнивания драйвер принтера Flash Player использует настройки HTML, указанные в диалоговом окне Publish Settings (Настройки публикации); выделенные кадры распечатываются в том виде, как они представлены во фрагменте фильма. Можно разрешить пользователям распечатать фрагмент фильма, который не видим в браузере, указав для свойства visible этого фрагмента значение raise в панели Actions (Процедуры). Изменение свойства фрагмента фильма действием Set Property (Настроить свойства), кадрировании или применение любого инструмента преобразования не влияет на распечатку фрагмента фильма; чтобы фрагмент фильма можно было распечатать, он должен находиться на Столе или в рабочей области и иметь собственное имя трансформы; для печати все элементы должны быть полностью загружены. Для проверки этого условия можно использовать свойство _framesloaded или инструкцию ifFrameLoaded



Публикация фильма с распечатываемыми кадрами



Публикация фильма с распечатываемыми кадрами

Опубликовать фильм Flash с доступными для печати кадрами в Web позволяет команда Publish (Публиковать). Эта же команда создает необходимые шаблоны HTML Flash для поддержки публикуемого фильма.

См. гл. 14.

Для того чтобы воспользоваться возможностями печати и печатать обозначенные ярлыками кадры, необходимо установить Flash Player 4.0.25 (Windows) или 4.0.20 (Macintosh) или более поздних версии. Можно создать на страничке систему обнаружения надлежащей версии Flash I'layer.



Распечатка фильма



Распечатка фильма

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

указать в фильме Flash кадры, которые можно распечатать. Это позволяет создавать макеты страниц для печати и защищать материал от неправомочной распечатки; определить доступные для печати области кадров; определить, как именно будут распечатываться кадры - как векторная графика (используя преимущество высокого разрешения) или как растровая графика (чтобы сохранить эффекты прозрачности и цветовые эффекты); назначить процедуру print кадрам фрагментов фильма, даже если фрагменты невидимы. Это позволяет предлагать материалы для распечатки, не занимая ценное пространство браузера.



Распечатка из Flash Player



Распечатка из Flash Player

Пользователи могут печатать фильм непосредственно из Flash Player в браузере двумя способами:

выполнив команду Print (Печать) контекстного меню Flash Player; используя процедуру print.

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

По сравнению с процедурой print контекстное меню Flash Player ограничивает возможности печати: из меню печатаются только кадры главной временной диа1раммы и не распечатываются такие эффекты, как прозрачность или закрашивание.

Flash Player версии до 4.0.25 (Windows) или 4.0.20 (Macintosh) не поддерживают прямую распечатку кадров,



Создание распечатываемых кадров



Создание распечатываемых кадров

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

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

Откройте или сделайте активным публикуемый фильм. Активизируйте панель Frame (Кадр), выбрав команду Modify (Изменить) Þ Frame (Кадр). Выберите во временной диаграмме тот кадр, который хотите сделать доступным для печати. В панели Frame (Кадр) в поле Label (Ярлык) введите #р, чтобы определить кадр как доступный для печати (Рисунок 13.1).