Пусть фильм, в создании которого мы принимаем участие, состоит из нескольких файлов Shockwave/Flash: Эпизодl.swf, 9nH30fl2.swf и т. д. Соответственно, все персонажи, участвующие более чем в одном эпизоде, встречаются сразу в нескольких файлах. А нельзя ли их как-то вынести из этих файлов и поместить в отдельный файл? Налицо две выгоды от такого подхода. Во-первых, файлы Shockwave/Flash, составляющие фильм, получатся меньшими по размерам за счет того, что персонажи будут храниться не в каждом из этих файлов, а только в одном. Во-вторых, чтобы внести в облик какого-либо персонажа изменения - например, поменять ему прическу, достаточно будет изменить всего один файл и повторно его экспортировать.
Что мы ответим начальнику? Правильно - да! Запросто! Благо, Flash позволяет создавать разделяемые образцы и библиотеки. О них мы тоже поговорим в этой главе.
Копирование образцов из документа в документ
Самый удобный способ позаимствовать чужой образец - просто скопировать его из библиотеки нужного документа. Как мы уже знаем, Flash - многодокументное приложение, позволяющее открыть сразу несколько документов. Это значит, что мы можем открыть во Flash сразу два нужных нам документа и скопировать образцы из библиотеки одного документа в библиотеку другого.
Но как это сделать? Ведь панель Library всего одна! И отображает она содержимое библиотеки только того документа, что открыт в активном окне. А нам нужно иметь две панели - чтобы просматривать содержимое библиотек всех открытых документов!
Давайте взглянем на панель Library (см. рис. 8.3). Точнее, на небольшой инструментарий, находящийся в самой верхней ее части, выше строки статуса, где отображается количество образцов в библиотеке. Первое, что мы увидим, - это большой раскрывающийся список, показанный на рис. 8.17. В этом списке перечислены все открытые нами во Flash документы. Просто выбираем нужный - и панель Library выведет содержимое его библиотеки.
![](/images/openglorg15/openglorg15-173.png)
Рис. 8.17. Раскрывающийся список открытых документов, находящийся в панели Library
![](/images/openglorg15/openglorg15-174.png)
Рис. 8.18. Две панели Library, представляющие содержимое библиотек двух открытых во Flash документов Собственно, нам совсем не обязательно открывать на экране несколько панелей Library. Мы можем просто перетащить экземпляры с рабочего листа одного документа на рабочий лист другого (конечно, в этом случае следует позаботиться о том, чтобы окна обоих документов были видны на экране) или скопировать их через буфер обмена. Flash при этом также выполнит копирование соответствующих образцов.
Если мы скопируем в библиотеку другого документа образец, имя которого совпадает с именем уже имеющегося в этой библиотеке образца, снова возникнет конфликт имен. На экране появится уже знакомое нам диалоговое окно Resolve Library Conflict (см. рис. 8.16), с помощью которого мы сможем указать Flash, как разрешить этот конфликт.
Мы можем открыть нужный документ не целиком, а только его библиотеку. Для этого достаточно выбрать пункт Open External Library подменю Import меню File или нажать комбинацию клавиш <Ctrl>+<Shift>+<0>. На экране появится стандартное диалоговое окно открытия файла Windows; выберем в нем файл документа Flash, из которого хотим позаимствовать образцы, и нажмем кнопку открытия.