logo
43121

Глава 10. Образцы и библиотеки. Проводник Flash

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

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

Но зачем? Кому нужны эти библиотеки и образцы? Зачем нам эта лишняя головная боль?

Давайте возьмем гипотетическое изображение Flash, содержащее множество мелких одинаковых элементов. Не будем придумывать, что это за изображение, просто представим себе его. Каждый его элемент описывается некоторым набором графических примитивов, а, значит, занимает место в памяти и на диске. Десять таких элементов занимает в десять раз больше места, сто элементов - в сто раз больше и т. п. Представляете, во сколько раз увеличится результирующий файл Shockwave/Flash?

Теперь давайте рассуждать так. Что представляет собой этот огромный файл? Повторяющийся набор описаний абсолютно одинаковых элементов - и больше ничего. Мы описываем много раз одно и то же! Нельзя ли нарисовать этот повторяющийся элемент один раз, а потом просто ставить в нужных местах ссылку на его описание? В этом случае мы сэкономим уйму места: ссылка на описание графического элемента занимает несравнимо меньше места, чем сам этот графический элемент. Возможно, ли такое сделать во Flash?

Конечно. Если бы не было возможно, мы бы об этом не говорили. В этом случае описание графического элемента помещается в особое хранилище, называемое библиотекой, а сам этот элемент получает название образца(в терминологии Flash - symbol).

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

Теперь в нужном месте на рабочем листе мы ставим ссылку на этот образец, создавая тем самым экземпляр образца или просто экземпляр (в терминологии Flash - instance).

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

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

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

Все файлы, что вы импортировали в документ Flash, кроме изображений формата Shockwave/Flash, также оказываются в библиотеке. Все изображения и фильмы, созданные в других программах, все звуки оказываются там и превращаются в образцы. (Кроме изображений в формате Shockwave/Flash - эти помещаются прямо на рабочий лист, и вам придется вручную добавить их в библиотеку.) Это очень удобно: вы можете помещать экземпляры импортированного изображения или звука на лист сколько угодно раз, а размер файла при этом увеличиваться не будет. (Хотя, конечно, все-таки увеличится - при самом импорте.)

Flash также позволяет вам создавать разделяемые библиотеки. Такие библиотеки вы можете выкладывать в Интернет, чтобы другие пользователи Flash могли использовать их содержимое. При этом проигрыватель Flash, загрузив изображение, в котором был использован образец из разделяемой библиотеки, автоматически загружает файл библиотеки и извлекает из нее нужный образец. Таким образом, размер файла Shockwave/Flash уменьшится еще сильнее. Однако если проигрыватель Flash не сможет загрузить файл разделяемой библиотеки, изображение не будет показано правильно.

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

Типы образцов

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

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

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

Образец-клип (movie clip) представляет собой настоящий фильм, созданный во Flash или другом программном пакете, импортированный в текущий документ Flash и помещенный на рабочий лист как часть изображения. Такой образец "работает" совершенно независимо от основного изображения, частью которого является. Образцы-клипы применяются для создания очень сложной анимации. Кроме того, по сравнению с графическими образцами, образцы-клипы предоставляют дополнительные возможности для программирования своего поведения, поэтому часто используются при создании пользовательского интерфейса. Мы изучим образцы-клипы во время рассмотрения создания анимации в среде Flash (часть 3 книги).

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

Кроме перечисленных выше трех типов, Flash поддерживает еще три: образец-растровое изображение (bitmap), образец-звук (sound) и образец-импортированный клип (embedded video). Их также собирательно называют импортированными образцами. Как вы уже поняли, образцами-растровыми изображениями становятся импортированные в документ растровые изображения, а образцами-звуками - импортированные звуки. Эти два типа образцов не могут быть созданы непосредственно во Rash, в отличие от графических образцов, кнопок и образцов-клипов.