Гіпермаркет Знань>>Інформатика>>Інформатика 9 клас>> Інформатика мова: Поняття комп'ютерної графіки. Реферат до предмету Інформатика 9 клас. Тема «Macromedia Flash MX».
Скажем сразу, что Flash - пакет компьютерной графики и формат сохранения ее в файле. Скажем больше: это пакет для создания и формат для сохранения двумерной анимированной компьютерной графики, предназначенной, в основном, для публикации в Интернете. Скажем проще: это средство создания мультиков, которые мы можем выложить в Сеть. Скажем чистую правду: именно Flash принес в Интернет высококачественную и компактную анимацию. Скажем еще кое-что: Flash породил целый вид искусства, известный как "Flash-анимация", и целую касту деятелей этого искусства, известную как "Flash-аниматоры". На сегодняшний момент существует множество Web-сайтов, построенных с использованием технологии Flash. Есть также довольно много программ, использующих для тех или иных целей Flash-графику. Создано большое количество неплохих Flash-фильмов, которые мы можем увидеть на сайтах http://www.mp4.com, http://www.hypnotic.com, http://atomfflms.shockwave.coin и др. Существует Дмитрий Дибров, показывающий в телепередаче "Ночная смена" потрясающие по своей невразумительности Flash-ролики. И, наконец, существует целое сообщество «флэшеров». Ниже мы подробнее рассмотрим все возможности, предлагаемые Macromedia Flash. И, поскольку Flash, в первую очередь, предназначен для создания интернет-графики, особое внимание мы уделим компьютерным сетям. История компьютерной графики неотделима от истории персональных компьютеров. В самом деле, во времена больших ЭВМ компьютерная графика если и существовала, то носила чисто утилитарный характер. Например, нарисовать зелеными линиями на черном фоне простейший график, основанный на результатах каких-либо расчетов. Или вывести на экран только что спроектированную печатную плату. Как видите, тогдашние ЭВМ использовались только для дела. А, как поется в одной старой песне, "первым делом - самолеты" Персональный компьютер (ПК) произвел настоящую революцию в мире вычислительной техники. Изначально подразумевалось, что это чудо может использоваться своим хозяином не только для дела, но и для потехи. (И делу время, и потехе час - так гласит пословица.) А для этого "персоналке" нужны хорошие возможности по выводу сложных графических изображений. Неудивительно, что даже на заре новой эпохи только самые дешевые ПК имели видеоадаптер, приспособленный исключительно для вывода текста (как говорят профессионааьные компьютерщики, алфавитно-цифровой). Компьютерная графика эволюционировала вместе с компьютерным "железом" и программным обеспечением. Сначала это были корявые картинки, выполненные в шестнадцать цветов огромными пикселами. С совершенствованием графических подсистем и мониторов изображение на них стало выглядеть больше похожим на оригинал и меньше - на плохую мозаику. По мере совершенствования графических файловых форматов, алгоритмов сжатия и программ, обрабатывающих графику, качество изображения улучшалось, а размеры графического файла уменьшались. В результате компьютерные художники из немногочисленных сумасбродов превратились в настоящих профессионалов своего дела. Сейчас все книги, журналы и газеты верстаются на компьютерах, в Интернете полно электронных репродукций картин и фотографий на любые вкусы (и на любое безвкусие), качество компьютерных игр приближается к качеству блокбастеров десятилетней давности, а сами блокбастеры помещаются на обычных компакт-дисках с надписью "DivX". Казалось бы, все замечательно. Так зачем нужен еще один графический формат - Macromedia Flash? Для того чтобы ответить на этот вопрос, нам нужно обратиться к интернет-графике. Именно для Интернета и был создан Flash. Что такое Интернет? Нет, не так... Что такое Интернет для большинства его пользователей? Электронная почта (отметаем сразу, ибо не наш профиль), вирусы (давить!), хакеры (давить!) и Всемирная Паутина, или, как говорят еще, World Wide Web, она же )^FrЖилипросто Web. Вот на ней мы остано¬вимся подробнее. Что такое Всемирная Паутина? Это Web-странички. А что такое Web-странички? Это текст, который можно читать, графика, которую можно смотреть, музыка, которую можно слушать, видео, которое также можно смотреть, и файлы, которые можно скачать. Если вы не новичок в Интернете, то сами знаете, что такое Паутина. Она живет, взаимодействует с вами, реагирует на вас и ваши действия. То есть, она интерактивна, иначе говоря, общительна. Почтовые Web-серверы запрашивают у вас имя и пароль и выдают вам именно вашу почту. Новостные сайты выводят список самых последних событий "бегущей строкой", позволяя вам щелкнуть по нужному заголовку и прочесть больше. Файловые архивы регистрируют каждое скачивание каждого хранящегося на них файла. А сайты с онлайновыми играми? И "продвинутые" сайты с "продвинутыми" интерфейсными элементами, наподобие всплывающих меню или картинок, ползающих за курсором мыши? И концептуальные сайты с потрясающе красивыми заставками? Неужели вы не видели всего этого?!! Но другой недостаток HTML не преодолен до сих пор. Это его порочная неинтерактивность. В самом деле, если вы хотите сделать на своей Web-странице всплывающее меню со ссылками на другие страницы, одним лишь HTML вам не обойтись. Вам нужно будет встраивать в HTML-код страницы программы, написанные на специальном языке JavaScript. Такие программы называются сценариями и служат для управления поведением той или иной части Web-страницы в ответ на то или иное действие пользователя. Как видите, врожденный порок инвалида - HTML - пытаются преодолеть с помощью костылей - сценариев. И не всегда это получается. То, что дает нам Flash, можно выразить тремя словами: компактность, безопасность, интерактивность. Давайте рассмотрим подробно, что же скрывается за всем этим. Файлы, хранящие изображения Flash, на самом деле очень компактны. Это достигается одной особенностью, которую мы во всех подробностях рас¬смотрим позже. А пока проведем такую аналогию. Возможно, вы писали какие-либо программы на одном из компилируемых языков программирования (Pascal, C++, Visual Basic и т. п.). При этом процесс написания программы выглядит следующим образом. Вы пишете исходный текст программы в виде текстового файла; при этом текст выглядит так, что с ним удобно работать (конечно, удобно тому, кто знаком с этим языком программирования). После этого вы запускаете особую программу - компилятор - и передаете ей получившийся текстовый файл. Компилятор преобразует набор команд языка в набор инструкций процессора - выполняет его компиляцию - и сохраняет его в исполняемом файле с рас¬ширением exe (com, dll, ocx и др.). Если вы откроете исполняемый файл в текстовом редакторе, вы ничего не поймете - этот файл представляет собой мешанину шестнадцатеричных цифр, в которой нет ничего от исходного текстового файла. Однако процессор компьютера прекрасно понимает эту мешанину - для него этот язык "родной". Так же поступает и Flash. При публикации Flash-изображения оно подвергается такому же преобразованию. В результате создается исключительно компактный файл формата Shockwave/Flash с расширением swf, аналог исполняемого файла обычной программы. Этот файл впоследствии может быть загружен и просмотрен с помощью специального проигрывателя Flash, который можно рассматривать как аналог процессора компьютера. В последнее время появились технологии, позволяющие внедрять в Web-страницы небольшие программы, которые можно использовать, в том числе, для отображения различной информации и создания пользовательских интерфейсов. Существует две разновидности таких программ: атлеты Java и компоненты ActiveX. Апплеты (от английского applet - приложение) Java пишутся на межплатформенном языке программирования Java, разработанном фирмой Sun. Компоненты ActiveX были разработаны фирмой Microsoft и пишутся на любом языке программирования, их создание. К достоинству этих технологий можно отнести возможность реализации логики любой сложности, к недостатку - трудность создания. И, наконец, самая "горячая" новинка современных интернет-технологий. Это язык описания документов и, одновременно, программирования Curl, разработанный фирмой Curl Corporation (http://www.curl.cora). Curl позиционируется как "могильщик" языков HTML, JavaScript, апплетов Java, компонентов ActiveX и практически всех графических форматов, используемых в Интернете, в том числе и Flash. Достоинством этого языка выступает простота написания документов и программирования любых сценариев, а недостатком - пока что очень малая распространенность. Как видите, все вышеперечисленные технологии имеют серьезные недостат¬ки, препятствующие их распространению. Только Flash сочетает такие особенности, как широкая распространенность, простота создания графики и реализация программной логики пользовательского интерфейса, высокое качество графики, богатые возможности по ее обработке и компактность получаемого файла. Неудивительно, что 95% пользователей Интернета имеют на своих компьютерах установленный модуль расширения Web-обозревателя, позволяющий просматривать графику Flash. Итак, нам нужно создать изображение. Статичное или анимированное (то есть, фильм), простое или интерактивное (фактически, программу) - неважно. Что делать? Прежде всего, четко представлять, что мы хотим сделать. Это означает, что нам нужно предварительно спланировать свое пока еще не существующее изображение. Лучше всего нарисовать его на бумаге, хотя это необязательно. Важно просто хорошо представлять себе окончательный результат. Это нужно хотя бы для того, чтобы в процессе работы не забыть, что мы хотим сделать. Ведь если мы что-то забудем, переделывать уже сделанное будет гораздо труднее, чем делать это сразу, правильно. Второй этап - собственно рисование. Если в наши планы входит создание анимации, то сначала подготовим неподвижную часть графики. Потом займемся созданием самой анимации. Повторяю, здесь мы создаем саму графику, не затрагивая интерактивные возможности, если они есть. Нарисуем все, что нужно, даже те элементы, которые необходимы только для реализации интерактивных возможностей. Это нужно, чтобы проверить саму композицию нашего изображения и при необходимости вовремя исправить ее. Интерактивными возможностями займемся на третьем этапе. Именно здесь мы создадим все элементы, которые будут отвечать только за интерактивность. И. конечисх напишем сценарии на языке ActionScript, которые и будут реализовывать эту интерактивность. Здесь же мы выполним отладку и исправим ошибки в этих сценариях. Самый последний, завершающий этап - это публикация готового изображения в один из форматов, пригодных для распространения. Что подразумевается под публикацией, стоит рассмотреть более подробно. Когда вы работаете в среде Flash, вам нужно сохранять промежуточные и окончательные результаты работы. Для этого Flash, как и все программы, предоставляет возможность создания файлов своего собственного формата, называемого документом Flash. Это файл с расширением - довольно больших размеров, в котором хранится вся графика и все сценарии ActionScript, привязанные к этой графике. Кроме того, в данном файле хранится вся информация, необходимая для того, чтобы вы могли в любой момент исправить как графику, так и сценарии. Подобная информация зачастую весьма объемиста, поэтому файл документа Flash имеет такие большие размеры - до сотен килобайт. Вот поэтому Flash поддерживает два графических формата. Один из них служит для сохранения результатов работы в самой среде Flash - это фор¬мат документов Flash, записываемых в файлы с расширением fla. Второй формат служит только для распространения графики и включает лишь ту информацию, которая нужна для отображения этой графики и придания ей интерактивности. Эта информация сильно оптимизирована, чтобы уменьшить размер файла и ускорить его обработку. Такие файлы называются распространяемыми файлами Shockwave/Flash. He перепутайте эти два формата данных - они совершенно разные и служат разным целям, хотя и тот, и другой предназначены для сохранения графики. Формально последним этапом создания Flash-изображения является его распространение. Но мы не будет рассматривать, как это осуществляется. В конце концов, это проблемы уже не Flash. Здесь мы опишем только, как и с помощью какого программного обеспечения можно просмотреть готовое изображение. Но с проблемами распространения своего творчества мы столкнемся еще не скоро. Пока что мы не знакомы с самой средой Flash. Познакомимся же с ней поближе. Главное (или основное) окно программы Macromedia Flash показано на рис. 1.1. Рассмотрим его подробнее. Окно документа Flash занимает большую часть окна программы. Его заголовок совпадает с именем открытого в нем файла. Вы можете перемещать, свертывать и развертывать это окно и изменять его размеры, в общем, проделывать с ним те же манипуляции, что и с любым другим окном Windows. Единственное исключение: вы не можете "вытащить" это окно за пределы окна программы (так называемого родительского окна). При первом запуске Flash MX выводит на экран еще одно небольшое окно, показанное на рис. 1.2. Это так называемое приглашение, содержащее текст, предлагающий пользователю прочитать некоторые справочные данные или запустить интерактивные презентации, объясняющие, как работать во Flash. Вы можете просмотреть их или сразу же закрыть это окно. При последующих запусках окно-приглашение появляться больше не будет. Левее окна документа находится главный инструментарий Flash или просто инструментарий. (Его также называют панелью инструментов, но мы не будем употреблять этот термин, чтобы избежать путаницы.) Эта небольшая серая панель, вытянутая по вертикали, содержит в себе набор кнопок. Нажимая кнопки, вы можете выбирать те или иные инструменты, предлагаемые Flash для рисования или правки графики. Если вы "захватите" инструментарий мышью за особую "ручку", отображаемую в виде набора точек на темно-сером фоне в ее верхней части (рис. 1.3), то он "отклеится" от края родительского окна и превратится в независимое окно (рис. 1.4). Таким образом вы можете увеличить площадь окна документа Flash. Можно перемещать это окно по экрану так же, как любое другое окно. Есть даже возможность "вытащить" его за пределы окна программы, что недоступно для окон документов. Однако менять размеры окна, содержащего инструментарий, вы не можете - они всегда постоянны. Если же вы не хотите, чтобы инструментарий маячил постоянно перед глазами, вновь "приклейте" его к краю окна. Для этого "поднесите" его мышью к левому или правому краю родительского окна и оставьте там. Отследить момент "приклеивания" и "отклеивания" очень просто: если при перетаскивании инструментарий меняет толстый контур на тонкий, то при отпускании кнопки мыши он будет "приклеен". И наоборот, если тонкий контур меняется на толстый, инструментарий будет "отклеен". Чтобы ин¬струментарий ни в коем случае не "приклеивался" к краю окна, при его перетаскивании удерживайте нажатой клавишу <Ctrl>. Если вы хорошенько присмотритесь к инструментарию, то увидите, что он разделен на четыре области. Перечислим их сверху вниз. 2. Область вспомогательных инструментов (заголовок View). Здесь находятся всего две кнопки, которые мы рассмотрим в этой главе. Не всегда в данный момент времени в инструментарии присутствуют все четыре области. Область модификаторов в некоторые моменты может быть пуста. Большинство панелей имеют так называемое дополнительное меню. Оно открывается при щелчке мышью по небольшой кнопке, расположенной в правом верхнем углу панели и имеющей изображение списка из трех позиций и небольшой стрелки, направленной вниз (рис. 1.9). В дополнительном меню находятся пункты, выполняющие редко используемые команды. Пункт Tools служит для вывода на экран или скрытия главного инструментария. Если слева от имени этого пункта стоит галочка, это значит, что инструментарий выведен на экран (или, как еще говорят, что соответствующий пункт меню "включен"). Чтобы убрать его, снова выберите этот пункт; инструментарий исчезнет вместе с галочкой. Если впоследствии вы еще раз выберете этот пункт, инструментарий и галочка снова появятся. Такие пункты меню, меняющие свое состояние на противоположное при выборе, называют выключателями. Вместо выбора этого пункта вы можете нажать "горячую" комбинацию клавиш <Ctrl>+<F2>. Большую часть меню Window занимает набор аналогичных пунктов-выключателей, служащих для вывода на экран или скрытия различных панелей. Далее в книге мы рассмотрим эти пункты вместе с рассмотрением той или иной панели. Если вам для какой-то цели нужно закрыть все панели и инструментарии, например, чтобы просмотреть без помехи все изображение, выберите пункт Close All Panels. Все панели будут тут же закрыты. Но имейте в виду, что открывать вам их придется вручную. Если же вам нужно не закрыть безвозвратно, а просто скрыть на время все панели и инструментарии, выберите пункт Hide Panels в меню View. Этот пункт работает как выключатель, т. е. при первом выборе он скрывает все панели, а при втором - снова выводит их на экран. Вы также можете нажать клавиши <ТаЬ> или <F4> - это проще и быстрее, чем лезть в меню. Есть еще один весьма удобный способ организовать свое рабочее место: пользовательские раскладки панелей. В двух словах это можно объяснить следующим образом. Вы открываете нужные вам в данный момент панели, располагаете на экране так, как вам удобно, и сохраняете их расположение в настройках Flash. После этого вы можете закрыть их совсем или переместить на другие места. Но чтобы вернуться к прежнему состоянию, вам достаточно будет выбрать сохраненную ранее раскладку, и все панели выстроятся на экране так, как они были выстроены при сохранении выбранной раскладки. Таких сохраненных раскладок может быть сколько угодно. Чтобы сохранить раскладку панелей, выберите пункт Save Panel Layout. На экране появится диалоговое окно Save Panel Layout (рис. 1.12). Введите в поле ввода Name имя сохраняемой раскладки и нажмите кнопку ОК. Если вы передумали сохранять раскладку, нажмите кнопку Cancel.
Как видите, окно документа Flash разделено на две неравные части. Разделены они тонкой серой линией, которую вы можете перетаскивать мышью, меняя размеры этих частей. Ниже этой серой линии, практически сливаясь с ней, находится также небольшая панель с кнопками, которую невозможно скрыть. Небольшое изображение, нарисованное нами для примера, находится как раз внутри этого прямоугольника. Этот прямоугольник схематически представляет наш рисунок, и размеры его совпадают с размерами этого изображения, заданного при его создании. То, что не входит в пределы этого прямоугольника, не попадает в наше изображение и отбрасывается Flash при сохранении в формате Shockwave/Flash. Назовем этот прямоугольник рабочим листом или просто листом, а всю серую область, где рисуется графика, - рабочей областью. Как вы уже поняли, изображение рисуется в рабочей области. При этом все,что не попадает на рабочий лист (то есть, находится на окружающем его сером поле), не войдет в окончательное изображение, сохраненное в файле Shockwave/Flash. Однако в файле документа Flash сохраняется все: и попадающее на рабочий лист, и находящееся на сером поле. Этим можно пользоваться, размещая некоторые части изображения на сером поле и перетаскивая их на лист, когда в них появится нужда. Прежде, чем начать работать с документом, его нужно создать. Давайте же выясним, как создать новый документ (точнее, новый файл документа) в среде Flash. Создать сам документ очень просто. Для этого выберите в меню File пункт New или нажмите комбинацию клавиш <Ctrl>+<N>. Внутри окна программы Flash откроется новое окно документа с пустым рабочим листом и пустой временной линией. На этом этапе никаких новых диалоговых окон, запрашивающих дополнительную информацию, на экране не появляется. Собственно, когда вы запускаете программу Flash щелчком по ее ярлыку на Рабочем столе, в меню Start (Пуск) или на самом исполняемом файле, новый документ создается автоматически сразу после ее запуска. Прибегать к пункту New меню File вам нужно только тогда, когда вы хотите создать еще один новый документ в процессе работы с программой. Сохранение документа в файле выполняется после выбора пункта Save меню File или нажатия комбинации клавиш <Ctrl>+<S>. Если сохранение выполняется первый раз, т. е. документ еще не был сохранен в файле, то на экране появится стандартное диалоговое окно сохранения файла Windows, где вы должны будете задать имя файла. Впоследствии Flash будет просто сохранять документ, не спрашивая имени файла. Flash MX также предоставляет вам возможность сохранить документ в формате Flash 5 (предыдущей версии Flash). Для этого просто выберите в списке типов файла стандартного диалогового окна сохранения пункт Flash 5 Document. Если вам нужно пересохранить документ в другом файле под другим именем, выберите пункт Save As в меню File или нажмите комбинацию клавиш <Ctrl>+<Shift>+<S>. На экране появится стандартное диалоговое окно сохранения файла Windows, где вы должны будете задать имя нового файла. Если вы после множества изменений хотите загрузить последнюю сохрг ненную версию документа, выберите пункт Revert в меню File. Учтите только, что этот пункт недоступен, если вы ни разу не сохранили текущий документ или ни разу не изменяли его после загрузки. Чтобы закрыть открытый файл, активизируйте окно документа, в котором он открыт, и выберите пункт Close меню File или нажмите комбинацию клавиш <Ctrl>+<W>. Хотя проще всего будет закрыть это окно (имеется в виду окно документа, а не окно программы). Кроме того, Flash предоставляет возможность отправки открытого в его среде документа по электронной почте. Для этого выберите пункт Send в меню File. На экране появится окно программы почтового клиента, установленного в системе в качестве клиента по умолчанию. В этом окне будет сформировано готовое письмо с вложенным в него файлом, содержащим отправляемый документ. Вам останется только вписать адрес, тему и, возможно, текст письма и запустить отправку почты.
Собственно печать документа Flash осуществляется обычным для Windows-приложения способом. Вы выбираете пункт Print в меню File или нажимаете комбинацию клавиш <Ctrl>+<P>. После этого на экране появляется стандартное диалоговое окно печати Windows, в котором вы можете выбрать принтер, задать количество копий и выбрать страницы, которые должны быть напечатаны. Flash для печати использует стандартное окно без всяких изменений. В верхней части этого окна находится набор кнопок, с помощью которых над показанным в нем документом выполняются различные манипуляции. Всего этих кнопок семь: Print - ззапуск печати документа; Опять же, как и многие программы, предусматривающие печать своих документов, Flash предоставляет возможность задать параметры печати. Эти параметры включают задание размера бумаги, отступов, масштаба и центрирования изображения. Чтобы получить доступ к этим настройкам, выберите пункт Page Setup в меню File. На экране появится диалоговое окно Page Setup (рис. 2.6).
В левой части окна справки расположен древовидный список статей. Вы можете щелкнуть мышью по названию статьи, чтобы просмотреть ее содержание, развернуть или свернуть ветвь "дерева" статей. Содержание выбранной статьи отображается справа.Вы можете искать определения различных терминов, встретившихся в руководстве. Выполняется такой поиск ледующим образом. Над списком тем находится небольшое.меню из трех пунктов. Пункт Contents выводит собственно список тем. Пункт Index отображает набор букв алфавита (латинского, естественно). Выберите нужную букву, и на экране появится список терминов, начинающихся на эту букву. Вам останется только щелкнуть нужный термин, чтобы просмотреть его разъяснение. И, наряду с любопытством, оно правит этим миром. Более того, оно движет его вперед, объединяет людей, делает их единым целым - человечеством. В самом деле, представьте на минутку, что было бы, если каждый станет творить только для себя любимого, забыв об остальном человечестве? Мир бы раскололся на множество индивидуальных мирков; в чем-то эти мирки, несомненно, будут богаче большого мира, но в остальном - несравнимо беднее. "Настоящий творец творит только для себя", - сказал какой-то высоколобый мизантроп, но заприте этого умника в уютный карцер, изолируйте его от остального мира и посмотрите - много ли он натворит. В этой главе мы поговорим о тщеславии, человеколюбии и пользовательских настройках Flash. Как это связано между собой, мы сейчас объясним. Путь первый: переписывание программы под каждого конкретного пользователя (как правило, за отдельную плату). Такого подхода придерживаются разработчики бухгалтерских, складских, учетных, расчетных и прочих "деловых" программ. Хорошо известно, что бухгалтерия и складской учет в разных странах существенно отличаются, поэтому каждую такую программу приходится иной раз писать заново для каждого конкретного заказчика. А поскольку стандартизацией учета и контроля здесь и не пахнет, разработчики деловых программ всегда будут иметь свой кусок хлеба (и свою головную боль). Путь второй: создание гибких, настраиваемых программ. Такой подход выгоден для универсальных программ, которыми пользуются все: текстовых редакторов, обработчиков электронных таблиц, систем управления базами данных (СУБД), графических программ, системных утилит, проигрывателей видеофильмов и т. п. Разработчик оснащает свою программу возможностями ее настройки пользователем, эти возможности могут быть более или менее широкими, в зависимости от программы. В самом деле, не будет же он переписывать весь текстовый редактор полностью, чтобы изменить набор кнопок на инструментальной панели, да еще требовать за ую деньги! (Мягко говоря, его не поймут.) Macromedia Flash относится как раз ко второй категории программ, имеющих возможности настройки пользователем. Эти возможности довольно широки, мы рассмотрим их в отдельной, третьей главе книги, в ее первом разделе. И рассмотрим очень подробно. Вы уже знаете, что многим пунктам меню Flash присвоены клавишные комбинации. Таким образом, вы можете вызвать команду, просто нажав эту комбинацию, а не обращаясь к меню - так гораздо быстрее. Но Flash позволяет вам также перенастроить эти комбинации клавиш, если стандартные вас почему-то не удовлетворяют. Настройке клавиатурных комбинаций посвящен второй раздел этой главы.
В поле ввода Undo Levels задается количество операций пользователя, сведения о которых Flash хранит в памяти. Это нужно для выполнения операции так называемого отката, т.е. отмены результата последней операции пользователя. (Подробнее об откате см. главу 5.) В большинстве случаев лучше оставить значение по умолчанию (100). Если вы хотите сэкономить оперативную память компьютера для других нужд, можете уменьшить это значение вплоть до нуля. Если же, наоборот, вы считаете, что не уверены в себе, то можете увеличить его до 200. Включение флажка Disable PostScript позволит вам отключить PostScript-вывод при печати на принтере, поддерживающем PostScript. Это может замедлить печать, так что включайте этот флажок только при наличии проблем с выводом изображения на принтер. Если флажок Shift Select включен (а он включен по умолчанию), то для выделения нескольких графических фрагментов на листе вам придется удерживать нажатой клавишу <Shift>. Если же он выключен, вам не нужно удерживать клавишу <Shift> - Flash будет выделять фрагменты при последовательных щелчках мышью. Включать или не включать этот флажок - на наш взгляд, дело вкуса. Флажок Show Tooltips включает или отключает вывод всплывающих подсказок при наведении курсора мыши на кнопки и другие элементы управления панелей и инструментариев. Если этот флажок отключен, то в строку статуса окна программы также не будет выводиться справочная информация по пунктам меню. Включение флажка Disable Panel Docking отменяет возможность "приклеивания" панелей к краям окна программы. Включение флажка Disable Timeline Docking отменяет ту же самую возможность для временньй шкалы. О временньй шкале и анимации вообще см. часть 3. Если включен флажок Span Based Selection, то при щелчке на растянутом кадре будет выделен весь кадр. Если этот флажок выключен, то при щелчке будет выделен только тот промежуточный кадр, по которому щелкнули мышью. Фактически, флажок Span Based Selection заставляет Flash MX вести себя как предыдущая версия этого пакета Flash 5. Изначально он отключен, включите его, если вы переходите на Flash MX с предыдущей версии. Если включен флажок Named Anchor on Scene, Flash делает первый кадр каждой сцены именованным "якорем". О сценах и "якорях" см. главу 13. Раскрывающийся список Font Mapping Default позволяет установить шрифт, который будет подставляться вместо отсутствующих в системе шрифтов. Выберите любой шрифт, который вам нравится. Да, мы так и поступим. Сначала рассмотрим создание статичной графики, потом перейдем к анимации. Ну, а уж после того, как мы научимся делать анимированные картинки, можно рассмотреть и программирование во Flash: интерактивные фильмы, пользовательские интерфейсы интернет-программ и т. п. Таким образом, к концу этой книги вы узнаете все, что может Flash, и сможете использовать это "все" в своих целях. Но не торопитесь. Сначала немного поговорим о самой компьютерной графике. Вы скажете: мы уже говорили о ней во введении. Мы узнали, какое место в компьютерном мире вообще и в Интернете в частности она занимает сейчас, даже познакомились с краткой ее историей. Да, кое-что вы уже знаете, но этого для настоящей работы недостаточно. Современный компьютерный художник должен знать значительно больше. Чтобы полноценно работать с компьютерной графикой, нужно знать, в каких форматах она хранится, что они собой представляют, и какой формат в каком случае используется. Формат хранения графики - это способ записи графической информации в файле на диске. Чтобы корректно отобразить тот или иной графический файл, программное обеспечение должно поддерживать формат, в котором он записан. Форматов хранения графической информацией трудолюбивое человечество наплодило великое множество. Основная их масса была создана достаточно давно, вместе с программами для обработки графики, т. е. они являлись фирменным, "родным" форматом для той или иной программы. Очень немногие графические форматы были задуманы специально для обмена графическими файлами между разными программами (межпрограммные или программно-независимые форматы). К первым форматам можно отнести известный формат BMP, созданный специально для хранения графики в Windows-программах, а ко вторым - популярнейший формат GIF. В дальнейшем многие форматы графики исчезли (зачастую вместе с программами, для которых они были созданы), и лишь малое число их дожило до нашего времени. В живом мире действует жестокий закон эволюции. Это же справедливо и для мира компьютеров. Любое устройство, программа, любая технология нежизнеспособны, если они не найдут для себя "экологическую нишу", т. е. будут использоваться людьми. Так же как и любой графический формат. Те из них, что остались "живы", более или менее активно используются и покрывают практически все нужды современных компьютерных художников. Их-то и поддерживает большая часть современного графического программного обеспечения.
Гибридное изображение разбито на фрагменты, часть из которых выполнена в растровом, а часть - в векторном виде. Обычно все полутоновые фрагменты выноски, схемы, карты и т. п. Таким образом достигается компромисс между качеством изображения и размером файла. Все современные редакторы векторной графики, в том числе Flash, предоставляют возможность создания гибридной графики. Фактических можно даже назвать редакторами гибридной графики. Также гибридную графику создают и программы настольных издательств.
Итак, растровая графика применяется для: сохранения полутоновых изображений (сканированные или изначально нарисованные на компьютере картины, фотографии); Векторная графика лучше всего подойдет, если нужно: сохранить штриховые изображения (карты, чертежи, рисунки карандашом, гравюры) в электронном виде;
Для этого поддержка формата BMP была встроена непосредственно в ядро системы Windows. Также известен под названием DIB (Device Independent Bitmap - битовая матрица, не зависимая от устройства вывода). Графика сохраняется в файлах с расширением bmp или dib (встречается очень редко). Поддерживает все цветовые видеорежимы. Графические данные могут быть сжаты с использованием простейшего алгоритма RLE (Run Length Encoding - кодирование с переменной длиной строки). Если сжатие не используется, размер графического файла может быть очень велик. В настоящее время - один из самых распространенных графических форматов. Поддерживается практически всеми графическими программами. Из-за своей простоты требует для вывода очень мало системных ресурсов, поэтому основное его предназначение - хранение изображений, используемых как элементы пользовательского интерфейса операционной системы. В частности, именно в формате BMP хранятся системные "обои", заставки, иконки и т. п.
В 1989 году формат GIF был расширен; новая версия стандарта получила название С} Р89А. Во-первых, была введена поддержка прозрачности или "прозрачного" цвета, т. е. один цвет из всех доступных на изображении мог быть помечен как прозрачный, и сквозь него будет "просвечивать" фон изображения. (Профессиональные графики часто называют "прозрачный" цвет альфа-каналом, по-английски - alpha channel или просто alpha.) Во-вторых, появилась возможность сохранять в одном файле несколько изображений, которые могут демонстрироваться как фильм (так называемые "анимированные GIF-файлы"; о них мы поговорим в главе 12). Формат GIF прекрасно подходит для сохранения изображений с резкими цветовыми переходами. В частности, Web-дизайнеры создают в этом формате элементы оформления и рекламные баннерыдля своих страниц, а поддержка прозрачности и анимации им только на руку. Иногда в этом формате создаются начальные заставки и графические элементы интерфейса программ.
Графика хранится в файлах с расширением png. Поддерживает все цветовые видеорежимы. Для сжатия графики применяется очень мощный алгоритм Deflate (буквально - Чс , :иии ), обеспечивающий более сильное сжатие по сравнению с LZW. Графика может быть сохранена с чередованием не только строк, но и столбцов, таким образом, изображение будет "проявляться" и по строкам, и по столбцам. Также поддерживаются 256 фадаций прозрачности (альфа-канала) против всего двух у GIF и автоматическая коррекция яркости. Однако, по сравнению с GIF, формат PNG имеет и недостатки. Первый офомный недостаток - PNG не поддерживает анимацию. Правда, вряд ли это так уж актуально в связи с повсеместным переходом Web-аниматоров на Flash. Второй недостаток - файлы формата I'NCi больше, чем GIF, примерно на один килобайт из-за того, что в заголовке файла хранится гораздо больше информации. На мой взгляд, это тоже не очень значительный недостаток: получился файл чуть больше - ну и что? Так что, в принципе, вышеприведенные недостатки не повлияют на распространение формата PNG в Интернете.
Графика сохраняется в файлах с расширениями jpeg, jpe или jpg. Поддерживается только цветовой видеорежим TrueColor (24-битный цвет). Для сжатия графики используется исключительно мощный алгоритм под названием JPEG, фактически включающий в себя несколько алгоритмов сжатия для разных случаев. Этот алгоритм реализует сжатие данных с потерями, когда некоторая часть информации о цвете отбрасывается, и результирующий массив данных становится меньше. Во всех других форматах графики со сжатием применяются алгоритмы сжатия данных без потерь. При использовании алгоритмов сжатия с потерями качество графики ухудша¬ется. Чем сильнее сжатие, тем сильнее искажается изображение. Однако художник может регулировать процент сжатия, выбирая тем самым компромисс между качеством изображения и размером результирующего JPEG-файла. Область применения формата JPEG достаточно узка - распространение высококачественной полутоновой графики в Интернете. Сканированные полутоновые изображения при использовании умеренного сжатия получаются очень даже неплохими. Особенно популярны "в народе" подборки картин Бориса Вальехо и других так называемых "фэнтезийных" живописцев, сохраненные в JPEG-файлах.
Графика записывается в файлы с расширением tif или tiff. Поддерживаются все цветовые видеорежимы, прозрачность и несколько алгоритмов сжатия: LZW, Deflate и JPEG. Фирменной особенностью этого формата является возможность записи в графический файл так называемых тегов: специальных примечаний, вносимых художником или самой программой графического редактора. Существует две разновидности формата TIFF: совместимый с PC и с Apple Macintosh. Это вызвано различиями в архитектуре перечисленных компьютерных платформ. Формат TIFF поддерживается всеми графическими программами профессионального уровня. Более того, поддержка какой-либо программой этого формата говорит об ее профессиональной ориентации.
Формат Shockwave/Flash разработан фирмой Macromedia для сохранения изображений и фильмов, созданных в пакете векторной графики Shockwave. Позднее на основе Shockwave был создан пакет интернет-графики Flash, "унаследовавший" этот формат. Поэтому говорят, что существует единый формат Shockwave/Flash. Как вы уже знаете, фактически существует два формата представления графики Flash. Во-первых, это формат, в котором сохраняются подготавливаемые в среде Flash изображения и фильмы, - формат документов Flash. Во-вторых, формат, в котором хранится уже завершенная, экспортированная и подготовленная для публикации графика, которую можно загрузить в проигрыватель, - формат распространяемой графики Shockwave/Flash. Документы Flash сохраняются в файлах с расширением fla. Экспортированная же графика хранится в файлах с расширением swf.
В настоящее время формат Windows Metafile, в отличие от BMP, распространен очень мало, хотя поддерживается практически всеми графическими программами и требует очень мало системных ресурсов для вывода и обработки. Используется для хранения векторных изображений в некоторых программах (например, начальных заставок или элементов пользовательского интерфейса). В частности, Microsoft Word свой комплект картинок (так называемый "клипарт" от английского clipart) хранит в формате Windows Metafile. Вероятно, фирма Microsoft, хочет показать таким образом, что этот формат тоже пригоден для распространения графики. Формат Enhanced Windows Metafile - дальнейшее развитие Windows Metafile. Он также разработан Microsoft, однако "в народ" почему-то не продвигался и мало-мальски широкого распространения поэтому не получил. Автору за всю его достаточно длинную карьеру компьютерщика не попадалось на одного файла этого формата. Остается добавить, что формат предписывает сохранять графику в файлах и поддерживается многими современными графическими пакетами.
Графика сохраняется в файлах с расширением ai. Формат очень устойчив к сбоям, испорченный файл, как правило, с большой вероятностью все же можно прочитать.
Графика сохраняется в файлах с расширением cdr. Имеет несколько привлекательных возможностей по сравнению с Adobe Illustrator (например, сжатие графики, причем растровая и векторная графики сжимаются отдельно), но несовместимость различных версий формата и невысокая устойчивость к сбоям отнюдь не идут на пользу ею популярности. Этот формат Flash не поддерживается. Чтобы импортировать графическое изображение в формате CorelDRAW!, вам придется преобразовать его в другой формат, например, Adobe Illustrator или Windows Metafile, используя другую графическую программу.
Графика сохраняется в файлах с расширением eps. Такой файл представляет собой простой текстовый документ, содержащий набор команд для принтера напечатать тот или иной примитив. Таким образом, EPS-файл может быть отредактирован в любом текстовом редакторе при наличии знания языка PostScript.
Документы этого формата сохраняются в файлах с расширением pdf. Они создаются с помощью пакета Adobe Acrobat, а читаются - с помощью программы чтения Adobe Acrobat Reader, распространяемой бесплатно. По названию этих двух программ формат PDF получил свое второе название - формат документов Acrobat. Формат PDF получил огромную популярность для распространения электронных документов с богатым форматированием и графикой. Фактически, этот формат теперь стоит на втором месте, после HTML, по распространенности. Кроме Adobe Acrobat, создание документов PDF поддерживают множество других текстовых и графических пакетов. A Adobe Acrobat Reader -одна из популярнейших в мире программ.
Хоть язык VRML и поддерживающее его программное обеспечение, предназначенное для создания и "проигрывания" виртуальных миров были широко разрекламированы в свое время, распространение он получил очень ограниченное. Связано это с тем, что мощностей современных компьютеров пока что не хватает для создания чего-то более сложного, чем странные геометрические фигуры из двух сфер и конуса. К тому же, виртуальная реальность, похоже, потеряла для простых людей свою притягательность. Поэтому будущее VRML так же туманно, как и настоящее... Кратко напомним, что такое векторная графика. Векторное графическое изображение состоит из графических примитивов: простейших составных частей, каждая из которых может быть описана особой формулой. К графическим примитивам относятся прямые и кривые линии, простейшие геометрические фигуры (эллипсы, прямоугольники и пр.), текстовые надписи и импортированные растровые изображения. (Формально, если векторное изображение содержит в своем составе достаточно большое количество растровых изображений, говорят о гибридной графике, но мы не будем играть в терминологические игры, чтобы не запутаться.) Для каждого примитива в графическом файле сохраняются его тип и параметры описывающей его формулы: местоположение, размеры, цвет, кривизна, радиусы и т.п. Графическая программа, считав с диска такой файл, подставляет в соответствующие формулы нужные параметры, и мы получаем на экране или принтере исходное изображение. Процесс преобразования векторной графики в растровую называется растеризацией. В частности, программа векторного графического редактора выполняет растеризацию всякий раз, когда выводит векторное изображение на экран или принтер - устройства изначально растровые. Обратный процесс - преобразование растровой графики в векторный вид - называется векторизацией. Векторизация растрового изображения чревата большими потерями в качестве, особенно плохо векторизуется высококачественное полутоновое фотографическое изображение. Для выбора цвета линии и заливки создаваемых графических примитивов служит небольшая область в середине инструментария, носящая заголовок Colors.
Чтобы провести на рабочем листе прямую линию с помощью инструмента "линия", сделайте следующее. (Имеется в виду, что вы уже выбрали этот инструмент.) Поместите курсор мыши в том месте, где у вас будет начало линии, и нажмите левую кнопку мыши. После этого, не отпуская эту кнопку, протащите мышь в то место, где у вас будет конец линии. Пока вы буксируете мышь, от начала линии за ее курсором будет тянуться "резиновая" линия. Чтобы поставить вторую точку - конец прямой - и тем самым нарисовать ее, просто отпустите левую кнопку мыши в нужной точке. Все, прямая линия создана. Вы можете проводить таким образом линии любой длины и под любым углом. Если же вам нужно провести линию под углом, кратным 45°, то во время проведения линии удерживайте нажатой клавишу <Shift>. В этом случае проводимая линия будет автоматически "подгоняться" под подходящий угол. Если включен модификатор "притягивание" различных частей вашей графики друг к другу, при рисовании линий это учитывается. При буксировке мыши, если какой-либо из концов линии окажется достаточно близко от другой линии (возможно, принадлежащей другому графическому примитиву), правее и ниже курсора мыши появится небольшой кружок, сигнализирующий об этом. Если теперь отпустить кнопку мыши, завершив рисование линии, ее конец будет "приклеен" к уже нарисованной линии, к которой он приблизился. Вы можете изменять цвет линии с помощью уже знакомого вам селектора цвета линии. Селектор цвета заливки никакого влияния на рисуемые прямые линии не оказывает, так как у линий нет заливки.
Прямоугольник создается следующим образом. Поместите курсор мыши в том месте, где у вас будет его левый верхний угол, и нажмите левую кнопку мыши. После этого, не отпуская эту кнопку, протащите мышь в то место, где у вас будет находиться правый нижний угол прямоугольника. Пока вы буксируете мышь, Flash отображает "резиновый" прямоугольник, так что вы всегда будете видеть, что получается. Переместив курсор в нужную точку отпустите левую кнопку мыши - и прямоугольник будет нарисован. Эллипс создается аналогичным способом. Вы выбираете точку, соответствующую левому верхнему углу воображаемого прямоугольника, в который будет вписан эллипс, и буксируете мышь в точку правого нижнего угла этого прямоугольника. В процессе перетаскивания мыши Flash будет показывать вам "резиновый" эллипс. Вы можете рисовать, таким образом, прямоугольники и эллипсы любой формы. Если же вам нужно нарисовать правильный квадрат или правильную окружность, то во время рисования удерживайте нажатой клавишу <Shift>. Каждый нарисованный вами прямоугольник и эллипс будет иметь заливку. Цвет заливки задается нижним селектором цвета в области Colors инструментария. А цвет линий, как вы помните, задается с помощью верхнего селектора цвета. Прямоугольники, создаваемые с помощью одноименного инструмента, могут иметь скругленные углы. Для этого служит модификатор "скругленные углы". Включается он нажатием небольшой кнопки, появляющейся в области Options инструментария, если выбран инструмент "прямоугольник".
Чтобы выбрать инструмент "карандаш", щелкните в инструментарии соответствующую кнопку или нажмите клавишу <Y>. Курсор мыши при этом примет вид карандаша. Чтобы нарисовать с его помощью линию, поместите курсор мыши в точку, где она должна начинаться, и нажмите левую кнопку мыши. После этого, не отпуская левой кнопки, двигайте мышь по нужной траектории и, когда курсор мыши окажется в точке, где должен быть конец линии, отпустите кнопку мыши. Rash будет рисовать проводимую вами линию прямо во время движения мыши. Если вам нужно провести строго прямую горизонтальную или вертикальную линию, то во время рисования удерживайте нажатой клавишу <Shift>. Вы можете задавать цвет линии, пользуясь верхним селектором цвета, расположенным в области Colors инструментария. Нижний селектор цвета никакого влияния на проводимые "карандашом" линии не оказывает. Вы, наверно, заметили, что Flash автоматически сглаживает проведенную вами линию. Эта замечательная особенность, введенная программистами фирмы Macromedia, позволяет вам с помощью инструмента "карандаш" в любом случае проводить прямые линии. Как вы знаете, человеческая рука - не очень точный инструмент, и Flash это учитывает, сглаживая мелкие неровности проводимых вами линий. Однако, иногда такая "услужливость" может навредить, например, если вам нужно нарисовать что-то очень точно, со всеми неровностями и шероховатостями. Для регулирования степени сглаживания служит модификатор "сглаживание линий", представляющий собой кнопку, расположенную в области Options инструментария. Вы можете заметить, что в правом нижнем углу этой кнопки имеется небольшая черная стрелка, направленная направо вниз. При нажатии этой кнопки на экране появится меню, предлагающее пользователю на выбор несколько вариантов. Такие кнопки с меню часто применяются во Flash.
Прямую линию можно считать вырожденным случаем кривой Безье.) Кроме того, "перо" предоставляет возможность создания ломаных линий, состоящих из множества прямых или кривых отрезков, и весьма сложных геометрических фигур. Чтобы выбрать инструмент "перо", щелкните в инструментарии соответствующую кнопку или нажмите клавишу <Р>. Курсор мыши при этом примет вид чертежного рейсфедера. Рисование прямых с помощью "пера" выполняется следующим образом. Поместите курсор мыши в точку, где должно быть начало прямой, и щелкните левой кнопкой мыши. (Имейте в виду - нужно именно щелкнуть!) В этом месте на листе появится небольшая полая точка. Далее поместите курсор в конечную точку прямой и снова щелкните мышью. Прямая будет тотчас проведена. Если вы продолжите щелкать мышью в разных местах на рабочем листе, то сможете построить ломаную линию, аналогичную показанной на рис. 5.12. Чтобы завершить рисование ломаной, при создании последней ее точки сделайте двойной щелчок мышью вместо одинарного. Вы также можете сразу после последнего щелчка выбрать другой инструмент или щелкнуть где-либо на пустом пространстве рабочего листа, удерживая на¬жатой клавишу <Ctrl>. Для этого вам нужно при втором щелчке удерживать нажатой клавишу <Shift>. При создании ломаной вы можете замкнуть ее, для чего подведите курсор мыши к одной из уже созданных ее точек так, чтобы ниже и правее его появился небольшой кружок, и щелкните левой кнопкой мыши. В этом случае Flash автоматически создаст замкнутую область и поместит в нее заливку, как показано на рис. 5.13.
Чтобы выбрать инструмент "кисть", щелкните в инструментарии соответствующую кнопку или нажмите клавишу <В>. Курсор мыши при этом может принимать разные формы; в зависимости от настроек, заданных с помощью модификаторов.
Инструмент "ведро с краской" ведет себя аналогично реальному ведру с краской: если "опрокинуть" его над замкнутым контуром, краска "разольется" и заполнит ее. Если же контур имеет "прореху", например, вы забыли его замкнуть, заливка создана не будет. Как видите, Flash не допускает, чтобы "краска" "вытекла" наружу. Чтобы выбрать инструмент "ведро с краской", щелкните в инструментарии соответствующую кнопку или нажмите клавишу <К>. Курсор мыши при этом примет вид опрокинутого ведра с краской.
Под редактированием графики мы будем понимать изменение ее формы, а также ее полное или частичное удаление. Как добавить новые линии или фигуры вы уже должны знать - воспользуйтесь для этого одним из рассмотренных нами инструментов рисования. Для изменения графики Flash предоставляет четыре мощных инструмента: "стрелка выделения", "дополнительная стрелка выделения", "лассо" и "ластик". Первые два инструмента предназначены для выделения и правки элементов изображения, третий - для "вырезания" из фигур "лоскутков" произвольной формы, а четвертый - полного или частичного удаления фигур или их частей. Пользуясь этими четырьмя инструментами, вы сможете проделывать со своей графикой все что угодно.
Фрагментации подвержены сложные фигуры, состоящие из множества графических примитивов, нарисованных разным цветом. Это основное правило фрагментации. Вы можете также разбить на фрагменты и монолитные фигуры, но об этом мы поговорим чуть ниже. Чтобы лучше понять, что такое фрагментация, приведем небольшой пример. Нарисуем на листе Flash несложную фигуру, показанную на рис. 5.33. На этой фигуре мы и рассмотрим фрагментацию Flash-графики как явление. Нарисовав фигуру, выберем инструмент "стрелка выделения" и щелкнем на пустом месте, чтобы снять любое выделение. После этого выделим какой-либо из концов линии, выступающих за пределы перечеркнутого круга. Вместо того чтобы выделить всю линию, Flash выделил только ее фрагмент. Это произошло потому, что линия, рассекшая эллипс на четыре части (две половинки контура и две половинки заливки), и сама оказалась разделенной на три отрезка. На рис. 5.35 это проиллюстрировано наглядно. Как видите, фрагментация налицо. Монолитная, казалось бы, фигура "развалилась" сама собой на семь частей. И каждая ее часть является абсолютно независимым фрагментом. С фрагментацией тесно связана и другая особенность Flash-графики - слияние фигур. Заключается оно в том, что если два или более графических фрагментов, нарисованных одним цветом, соприкасаются, они превращаются в единое целое.
Проверьте, выбран ли у вас инструмент "стрелка выделения" на панели инструментов. Подавляющее большинство операций по правке графики выполняются с помощью именно этого, хорошо уже знакомого вам инструмента. Если для каких-либо операций понадобятся другие инструменты, мы специально предупредим об этом.
Прежде всего, вы можете перемещать выделенные фрагменты. Для этого сначала выделите их. Далее установите курсор мыши на какую-либо часть выделенного фрагмента, нажмите левую кнопку мыши и, не отпуская ее, перетащите выделенный фрагмент на новое место, после чего отпустите кнопку. Если вам нужно переместить графику в направлении под углом, кратным 45°, удерживайте во время перетаскивания клавишу <Shift>. Для точного перемещения графики можно воспользоваться клавишами-стрелками. Выделите нужный фрагмент и нажимайте клавиши-стрелки, пока он не окажется на нужном месте. При однократном нажатии на клавишу-стрелку происходит смещение на один пиксел. Если же вы при этом будете удерживать клавишу <Shifl>, при каждом нажатии выбранный фрагмент будет смещаться сразу на 8 пикселов. На новое место можно переместить не сам выделенный фрагмент, а его копию. Для этого просто перетащите его, удерживая нажатой клавишу <Alt>. Вы также можете выбрать пункт Duplicate в меню Edit или нажать комбинацию клавиш <Ctrl>+<D>, чтобы создать новую копию выделенного фрагмента, а потом перетащить ее на новое место обычным способом. Удалить ненужную графику совсем просто. Для этого выберите ее и либо нажмите клавишу <Del> или <Backspace>, либо выберите пункт Clear в меню Edit.
Однако это может быть и вредно, например, если вы хотите нарисовать очень сложную и извилистую кривую с помощью карандаша или провести две линии очень близко друг к другу. Поэтому Flash предоставляет вам воз¬можность временно отключить "притягивание". Отключить "притягивание" очень просто. Если у вас выбран инструмент "стрелка выделения", становится доступным модификатор "притягивание". Он представляет собой кнопку. По умолчанию эта кнопка нажата, т.е. модификатор включен. Чтобы его отключить, "отожмите" эту кнопку. Впоследствии вы, конечно, сможете снова его включить. Если инструментарий у вас скрыт, вы можете воспользоваться меню. Пункт-выключатель Snap to Objects меню View и одноименный пункт контекстного меню листа действуют так же. Но быстрее всего, вероятно, нажать комбинацию клавиш <Ctrl>+<Shift>+</>. Отключить "притягивание" к линиям координатной сетки и направляющим также очень просто. В первом случае отключите пункт-выключатель Snap to Grid подменю Grid меню View или нажмите комбинацию клавиш <Ctrl>+<Shift>+<'>. Во втором случае, по аналогии, отключите пункт-выключатель Snap to Guides подменю Guides меню View или нажмите ком¬бинацию клавиш <Ctrl>+<Shift>+<;>. (Подменю Guides и Grid также при¬сутствуют в контекстном меню листа.) Чтобы временно отключить "притягивание" к линиям пикселной сетки, вы можете нажать клавишу <С>; когда вы ее отпустите, "притягивание" включится снова.
Разумеется, Flash также поддерживает работу с буфером обмена. И предос¬тавляет стандартный набор операций, которые мы сейчас перечислим. Чтобы вставить содержимое буфера обмена на лист, выберите пункт Paste меню Edit или контекстного меню или нажмите комбинацию клавиш <Ctrl>+<V>. Содержимое буфера обмена будет помещено в центр листа. Если вы хотите поместить содержимое буфера обмена в ту же позицию, клг на¬ходится изначальный фрагмент, выберите пункт Paste in Place меню Edit или контекстного меню или нажмите комбинацию клавиш <Ctrl>+<Shift>+<V>. Эта операция характерна только для Flash, в других программах она может и не поддерживаться. Проблема совсем в другом: сможет ли творец распорядиться этим богатством? Но это уже проблема самого творца. И уж никак не компьютера, и не Flash.
Давайте взглянем на рис. 6.1, на котором изображен открытый селектор цвета. Мы видим, что большая его часть занята набором небольших квадра¬тиков, представляющих все доступные для выбора цвета, - так называемой палитрой. Чтобы выбрать требуемый цвет, поместите курсор мыши над нужным квадратиком и щелкните левой кнопкой мыши. Окно селектора цвета при этом закроется. Однако 'селектор цвета предоставляет еще одну интересную возможность. Вы можете выбрать цвет, просто "взяв" его из любой точки экрана. Если вы присмотритесь к курсору мыши, то заметите, что он имеет вид небольшой пипетки. Щелкните этой пипеткой по нужной точке экрана, и цвет этой точки будет выбран селектором. (Окно селектора при этом должно быть открыто.) Таким образом, вы можете "взять" для работы цвет окна Windows, цвет открытой в графическом редакторе фотографии и т. п. В верхней части окна селектора находится небольшое поле ввода. В этом поле отображается шестнадцатеричный код цвета, который находится под курсором мыши. Все цвета, отображаемые на экране компьютера, однозначно идентифицируются этим кодом. Попробуйте перемещать курсор (имеющий вид пипетки) по экрану и посмотрите, как будет изменяться содержимое этого поля ввода. Вы также можете ввести нужное значение кода цвета вручную, если, конечно, знаете его.
Чтобы вызвать смеситель на экран, выберите в меню Window пункт Color Mixer. Вы также можете выбрать пункт Mixer подменю Panels контекстного меню листа или нажать комбинацию клавиш <Shift>+<F9>. Появившаяся на экране панель смесителя показана на рис. 6.8. Вы можете щелкнуть расположенную в нижнем правом углу этой панели кнопку, имеющую вид треугольной стрелки, направленной вниз. После этого смеситель примет вид такой, как на рис. 6.9. В дальнейшем мы будем работать с развернутым смесителем, так как в таком виде он предоставляет больше возможностей, хоть и занимает больше места на экране. Посмотрите на левую часть смесителя. Там все знакомо: два селектора цвета - линии и заливки, - которые можно выбирать мышью и раскрывать, три дополнительные кнопки, рассмотренные нами чуть выше. Эти элементы управления дублируют область Colors инструментария и могут пригодиться, если инструментарий скрыт. В нижней части смесителя расположены два поля выбора цвета. Задать с их помощью нужный цвет очень просто. Для этого сначала выберите нужный селектор цвета - линии или заливки. После этого щелкните мышью по нужной точке центрального поля, чтобы выбрать сам цвет, затем щелкните по нужной точке правого поля, чтобы задать его яркость. После этого заданный вами цвет появится в выбранном селекторе и, одновременно, в расположенной слева области предварительного просмотра.
Но разговор о заливках еще не закончен. Сейчас мы рассмотрим еще некоторые параметры этих графических примитивов, которые вы можете задавать. И поможет нам в этом смеситель. Flash предоставляет художнику несколько видов заливки. Все они задаются с помощью раскрывающегося списка, находящегося правее селектора цвета заливки и расположенного в панели смесителя. Рассмотрим все эти заливки подробнее.
Чтобы отключить создание заливки при рисовании замкнутых фигур, выберите в раскрывающемся списке видов заливки пункт None. Это простейший вид заливки - больше вам не нужно задавать для него никаких параметров. Чтобы включить создание однотонной заливки, выберите пункт Solid. В этом случае вы можете задать цвет заливки, воспользовавшись соответствующими селекторами цветов в инструментарии и на редакторе свойств. Если у вас открыт смеситель, вы можете воспользоваться им.
Прежде чем мы продолжим разговор о градиентных заливках (иногда их для краткости называют градиентами), давайте введем один термин. Назовем цвета, на основании которых будет создаваться градиент, ключевыми. Например, для заголовка окна Windows 98 ключевыми цветами будут синий и светло-голубой. Это поможет нам в дальнейшем. Flash поддерживает два вида градиентной заливки: линейную и радиальную. В линейной градиентной заливке цвет меняется линейно при движении от одного конца фигуры к другому (рис. 6.14). В радиальной же градиентной заливке цвет меняется при движении от центра воображаемой окружности, вписанной в фигуру, к ее периферии (рис. 6.15). Как видите, названия видов закраски говорят сами за себя. Чтобы создать линейную или радиальную градиентную заливку, откройте смеситель и выберите в раскрывающемся списке видов заливки соответственно пункт Linear Gradient или Radial Gradient. После этого смеситель сменит свой вид (рис. 6.16). Рассмотрим, что же предлагается нашему вниманию в этом случае. Ниже раскрывающегося списка видов заливки находится линейка задания ключевых цветов заливки. По этой линейке перемещаются два указателя, задающие нужные цвета. Вы можете выбирать тот или иной указатель, просто щелкнув по нему мышью; выбранный указатель имеет не белую, а черную стрелку. Выбрав указатель, вы можете задать соответствующий ключевой цвет, указав в расположенном правее селекторе цвета или воспользовавшись двумя расположенными ниже панелями. Ну и, конечно, можно перемещать указатели, "захватывая" их мышью, чтобы подобрать нужное расстояние между ключевыми цветами на результирующей заливке.
Настала пора подробнее поговорить о палитре и управлении ее содержимым. Прежде всего, нужно сказать, что каждый документ Flash содержит свою собственную уникальную палитру, т. е. используемый в нем набор цветов. Вся работа над содержимым палитры осуществляется в панели Color Swatches. Чтобы вызвать ее на экран, выберите пункт-выключатель Color Swatches в меню Window или нажмите комбинацию клавиш <Ctrl>+<F9>. Можно также выбрать пункт Swatches подменю Panels контекстного меню листа. Сама панель Color Swatches показана на рис. 6.34. Эта панель состоит из двух частей. В верхней ее части находится уже знакомая вам палитра цветов, в нижней - различные виды градиентных и графических заливок, как заданные по умолчанию самой профаммои, так и созданные пользователем. Вы можете перемещать мышью серую полосу, разделяющую эти части. Для этого установите на нее курсор мыши, нажмите левую кнопку, не отпуская ее, перетащите полосу верх или вниз и отпустите кнопку мыши. Вы уже знаете, как добавлять в палитру новые цвета. Рассмотрим теперь, что еще можно с ними делать. Если Flash позволяет вам добавлять в палитру новые цвета и виды заливок, то уж конечно он должен позволить вам и удалять их. В самом деле, что делать, если палитра разрастется до нечеловеческих размеров и перестанет помещаться в панели Color Swatches? Только удалить ненужное. А удаляются ненужные цвета и виды заливки из палитры очень просто. Для этого выделите цвет или вид заливки, который вы хотите удалить, и выберите пункт Delete Swatch дополнительного меню. Кроме того, есть возможность продублировать выбранный цвет или вид заливки, чтобы в дальнейшем внести в него изменения. Для этого выделите нужный цвет или вид заливки, который вы хотите удалить, и выберите пункт Duplicate Swatch дополнительного меню. Если вы создали, с вашей точки зрения, исключительно удачную палитру и хотите сохранить ее для дальнейшего использования, то можете сохранить ее на диске. Палитра сохраняется в файле с расширением (так называемые файлы цветовых наборов Rash) или act (цветовые таблицы). Цветовые наборы Flash могут быть использованы только в самом Flash, а цветовые таблицы поддерживаются также другими графическими программами, в частности, Macromedia Fireworks и Adobe Photoshop. Кроме того, вы можете импортировать таблицы цветов из файлов GIF. Учтите только, что градиенты импортировать из и экспортировать в файлы цветовых таблиц и GIF нельзя. Чтобы сохранить цветовую палитру в файле, выберите пункт Save Colors дополнительного меню. На экране появится стандартное диалоговое окно сохранения файла Windows. Задайте имя файла, выберите его формат и нажмите кнопку сохранения. Также вы можете сохранить созданную вами палитру в качестве палитры по умолчанию, которая будет использоваться во всех вновь создаваемых документах Flash. Для этого выберите пункт Save as Default дополнительного меню. В дальнейшем сохраненные вами палитры можно снова загрузить. Чтобы загрузить палитру из файла, затерев существующую, выберите в дополнительном меню пункт Replace Colors. Если же вы хотите добавить цвета из загружаемой палитры в существующую палитру, выберите пункт Add Colors. В обоих этих случаях на экране появится стандартное диалоговое окно открытия файла Windows. Выберите формат файла, сам файл и нажмите кнопку открытия. Таким образом вы можете импортировать палитры из файлов цветовых наборов Flash, цветовых таблиц и файлов GIF. Чтобы загрузить палитру по умолчанию, выберите в дополнительном меню пункт Load Default Colors. А чтобы удалить из палитры все цвета, оставив только черный и белый, и все виды заливки, кроме простейшего черно-белого линейного градиента, выберите пункт Clear Colors. Пункт Web 216 дополнительного меню позволит вам загрузить так называемую безопасную палитру цветов WWW. Эта палитра включает в себя 216 цветов, которые гарантированно будут отображаться на любом компьютере. Если вы создаете изображения для публикации в Интернете, то лучше всего использовать именно эту палитру. Последний пункт дополнительного меню Sort by Color позволит вам отсортировать цвета в палитре по оттенку. К сожалению, вернуть обычный порядок сортировки цветов после этого невозможно. Создание текстовых блоков выполняется с помощью инструмента "текст". Чтобы выбрать его, щелкните в инструментарии кнопку или нажмите на клавиатуре клавишу <Т>. После этого курсор мыши примет вид небольшого крестика с буквой "А". Это означает также, что вы можете перенести текст из другого Windows-приложения, например, Microsoft Word. В случае достаточно большого текста это может быть более удобным, чем набор его прямо во Flash, т.к. Word содержит, кроме всего прочего, систему проверки орфографии, которая, несмотря на все свои недостатки, все же может принести пользу. Вы, вероятно, уже заметили, что при наборе текста созданный нами тексто¬вый блок растягивается только по вертикали. Если текст подходит к правой границе текстового блока, то переносится на следующую строку, для чего блок растягивается вниз. Горизонтальный же размер (ширина) остается постоянным, таким, каким мы его задали при создании текстового блока. Подобный текстовый блок называется блоком с фиксированной шириной (см. рис. 7.2). Текстовый блок создается примерно так же, как прямоугольник. Поместите курсор мыши в том месте, где у вас будет его левый верхний угол, и нажмите левую кнопку мыши. Затем, не отпуская эту кнопку, протащите мышь в то место, где у вас будет находиться правый нижний угол текстового блока. Пока вы буксируете мышь, Flash будет отображать синий "резиновый" прямоугольник, так что вы всегда будете видеть, что же у вас получается. Переместив курсор мыши в нужную точку, отпустите левую кнопку мыши - текстовый блок будет нарисован, и внутри него появится текстовый курсор (рис. 7.2). Наберите нужный текст и либо создайте новый текстовый блок, либо смените инструмент на "стрелку выделения". Для переноса текста на новую строку при наборе текста вы можете использовать клавишу <Enter>. Также вы можете редактировать текст, пользуясь клавишами-стрелками, <Backspace>, <Del> и др. Пользуясь мышью или обычными, используемыми в других программах, клавиатурными комбинациями, можно выделять фрагменты текста и работать с буфером обмена Windows. В частности, вы можете выделять слова двойным щелчком мыши и выделять все содержимое текстового блока нажатием клавишной комбинации <Ctrl>+<A>. Вы также можете, выбрав инструмент "текст", просто щелкнуть по листу мышью.
Сразу заметен раскрывающийся список шрифтов, который позволяет вам выбрать собственно шрифт. В этом списке перечислены все шрифты, установленные в системе. Когда вы выбираете в раскрытом списке шрифт, левее в небольшом окошке для вашего удобства показывается пример текста, на бранного этим шрифтом. Правее этого списка находится поле ввода с регулятором, с помощью кото¬рого задается размер (или, как говорят полиграфисты, кегль) шрифта в пунктах. Правее же поля ввода размера находятся селектор цвета шрифта, а также кнопки В (включение или отключение "жирности" шрифта) и I (включение или отключение курсивного начертания). Все это знакомо вам по текстовым редакторам. Чтобы изменить какие-либо параметры всего текста в текстовом блоке или его фрагмента, вам нужно будет выделить этот текст или фрагмент. Это выполняется так же, как и в других программах редактирования текста. Если же вы хотите изменить форматирование всего текста в текстовом блоке, просто выделите текстовый блок одиночным щелчком мыши при выбранном инструменте "стрелка выделения". Flash поддерживает векторные шрифты стандартов TrueType и Туре 1. Для выбора шрифта вы можете воспользоваться подменю Font меню Text. Там перечислены все установленные в системе шрифты. Аналогично выбрать размер шрифта можно, воспользовавшись подменю Size меню Text, -там перечислены наиболее употребительные размеры шрифтов. Это может быть полезно, если редактора свойств нет на экране. . В том же меню (Text) есть пункт Style, позволяющий задать и другие параметры шрифта. В частности: Но вернемся к редактору свойств. Ниже и левее списка шрифтов находится другое поле ввода с регулятором. С его помощью задается так называемый трекинг, т. е. дополнительное пространство между символами. Это иногда бывает очень полезно, например, для выделения заголовков - просто задайте для шрифта заголовка большой трекинг, чтобы буквы отстояли далеко друг от друга. Значение трекинга вводится в пунктах, причем можно вводить как положительные, так и отрицательные значения. В первом случае символы текста раздвигаются, а во втором - сближаются. При этом главное - не переборщить с трекингом, иначе символы или "разбредутся" слишком далеко друг от друга, перестав быть единым текстом, или сольются в точку. Задавать значения трекинга вы также можете, использовав подменю Tracking меню Text. Пункт Increase (и комбинация клавиш <Ctrl>+<Shift>+<->>) увеличивает трекинг, а пункт Decrease (и комбинация клавиш <Ctrl>+<Shift>+<^>) - уменьшает. Пункт Reset (и комбинация клавиш <Ctrl>+<Shift>+<t>) позволяет вернуть значение трекинга по умолчанию. Также в редакторе свойств находится флажок Kern. Этот флажок включает или отключает кернинг - специальное управление пространством между символами. Дело в том, что некоторые пары символов требуют задания различных значений промежутка между ними, например, промежуток между "А" и "W" должен быть меньше, чем между "А" и . Именно этим и занимается кернинг, благодаря ему текст выглядит более ровным. Правее поля задания трекинга расположен еще один раскрывающийся список. Он задает положение символов относительно базовой линии текста - воображаемой линейке, по которой "пишется" текст. В нем доступны три пункта: О Normal - обычное положение текста, когда он "лежит" на базовой линии; Вы также можете воспользоваться пунктами-выключателями Superscript и Subscript подменю Style меню Text. Первый превращает текст в верхний ин- декс, второй - в нижний.
Сразу скажем, что для создания текстовых блоков Flash позволяет использовать только векторные шрифты, т. е. шрифты формата TrueType и Adobe Туре 1. Любые растровые шрифты, даже если они и установлены в системе (а они наверняка установлены, ведь большинство системных шрифтов Windows - растровые), игнорируются и не показываются в списке шрифтов редактора свойств. Когда вы экспортируете готовое изображение в формат Shockwave/Flash, то Flash фактически сохраняет в результирующем SWF-файле все использованные в изображении шрифты. Этот процесс называется внедрением шрифтов. Благодаря этому проигрыватель Flash сможет вывести текст, набранный этими шрифтами, даже если они не установлены на компьютере пользователя. Таким образом, вам не нужно ограничивать себя небольшим набором стандартных шрифтов или распространять недостающие шрифты отдельно, чтобы пользователь увидел ваше изображение в первозданном виде.
Чтобы отформатировать какой-либо абзац, сначала поставьте в него текстовый курсор. (Для этого сначала выберите инструмент "текстовый блок".) Вы также можете выделить какой-либо фрагмент текста в этом абзаце - это не сыграет никакой роли. Выравнивание текста в абзаце задается с помощью находящегося в верхнем правом углу редактора свойств набора из четырех кнопок-переключателей. Также вы можете воспользоваться пунктами подменю Align меню Text. Перечислим все кнопки этого набора слева направо:
Чтобы сделать текстовый блок вертикальным, нажмите кнопку, находящуюся левее набора кнопок, задающих выравнивание. При этом на экране появится небольшое меню, в котором вы сможете выбрать нужный пункт. Всего таких пунктов три: Horizontal - горизонтальный текстовый блок (значение по умолчанию); Для европейских языков с направлением текста слева направо второй и третий пункты меню равнозначны. Вы можете выбирать любой. Ниже кнопки задания направления находится кнопка поворота текста. Изначально в вертикальном блоке текста буквы расположены горизонтально, т. е. одна над другой. Если вы нажмете кнопку поворота (она работает как кнопка-выключатель), то буквы текста будут повернуты на 90°. Включение флажка Use Device Fonts заставляет Flash использовать для отображения текста, введенного в текстовом блоке, шрифты-псевдонимы. Включение флажка Use Device Fonts аналогично выбору любого шрифта-псевдонима в раскрывающемся списке шрифтов редактора свойств, но затрагивает не выделенный фрагмент текста, а весь текст в текстовом блоке.
Также вы знаете, что поля ввода поддерживаются языком HTML. Вы можете поместить на своей Web-странице форму с полем ввода, в котором посетитель вашего сайта должен будет ввести, например, свое имя или идентификационный код. Такие поля ввода также предоставляют пользователю базовые возможности редактирования текста (правда, это зависит от операционной системы, под которой работает программа Web-обозревателя). Flash также поддерживает создание полей ввода. Давайте рассмотрим, как это делается. Однако предупредим сразу, что эта информация дается "на вырост". Сейчас мы рассмотрим только создание полей ввода, как обрабатывать введенные в них данные, вы узнаете в части 3 этой книги. Итак, прежде всего нам нужно создать обычный текстовый блок. Переключитесь на инструмент "стрелка выделения" и выделите его. После этого обратитесь к редактору свойств, найдите в его верхнем левом углу раскрывающийся список и выберите в нем пункт Input Text. В поле ввода Maximum Characters задается максимальное количество символов, которое в него сможет вводить пользователь. Если вы не хотите ограничивать это количество, введите 0. Вы уже знаете, что при экспорте изображения Flash помещает в файл Shockwave/Flash описания всех использованных в изображении шрифтов. Благодаря этому проигрыватель Flash может отобразить это изображение на любом компьютере, даже если нужные шрифты на нем не установлены. Од¬нако это может сильно увеличить размер SWF-файла. Есть, конечно, два компромиссных способа решения проблемы, которые были описаны ранее в этой главе, но сейчас речь не об этом. Дело в том, что Flash позволяет вам выбрать символы использованного в поле ввода шрифта, описания, которых будут внедрены в изображение Flash при его экспорте. Благодаря этому вы можете внести в результирующий файл только те символы шрифта, которые действительно нужны для вывода текста, а значит, уменьшить размер этого файла до необходимого минимума. Выбор символов выполняется в диалоговом окне Character Options, которое появляется на экране при нажатии кнопки Character редактора свойств.
Для вывода текста в динамический блок используются уже знакомые вам переменные. Программа помещает результат своей работы в переменную, а динамический текстовый блок потом забирает их оттуда и выводит на экран. Собственно вывод текста при этом выполняется автоматически самим Flash.
Прежде чем править символы как графику, вам нужно превратить текст в набор графических фрагментов. Для этого выберите текстовый блок, пользуясь инструментом "стрелка выделения", и выберите пункт Break Apart в меню Modify, в контекстном меню текстового блока или нажмите комбинацию клавиш <Ctrl>+<B>. Каждый символ созданного вами текста преобразуется в набор графических фрагментов, который впоследствии будет выделен. Вы можете применять для бывшего текста любые знакомые вам приемы для изменения формы и цвета графики. В частности, можно расположить символы такого текста по окружности или кривой - похоже, это единственный доступный во Flash прием сделать фигурный заголовок. Также вы можете создавать новые, причудливые шрифты или просто изменять форму отдельных символов. Посмотрите на рис. 7.17, там изображен результат преобразования формы обычной латинской буквы "U" с помощью инструмента "стрелка выделения". Есть еще одна область применения этой возможности. Помните, мы говорили, что при экспорте изображения в формат Shockwave/Flash все использованные в нем шрифты помещаются в результирующий файл? Мы еще упомянули о двух компромиссных путях решения этой проблемы. Так вот, есть возможность решить ее третьим, более удачным путем. А именно, преобразовать текст, набранный каким-либо сверхсложным и сверхэкзотическим шрифтом, в графику. Ведь чтобы отобразить набор кривых, в который превратится наш текст, проигрывателю Flash не нужно вообще никаких шрифтов. А значит, SWF-файл вашего изображения станет меньше. Единственный недостаток: вы не сможете преобразовать набор графических фрагментов обратно в текст. А значит, что подобный текст не подлежит редактированию. Поэтому перед преобразованием текста в графику убедитесь, что он не содержит ошибок.
Однако иногда бывает и другая ситуация. Вы отдаете документ Flash (FLA-файл) своему коллеге, а тот пытается открыть его на своем компьютере. И тут выясняется, что в его системе нет шрифта, которым был набран некий текст. Что случится в этом случае? Как только Flash понадобится для отображения текста этот самый отсутствующий шрифт, он выдаст предупреждение об этом. Давайте рассмотрим его во всех подробностях. Итак, текст этого предупреждения гласит, что Flash для вывода текста нужен шрифт, который в данный момент не установлен в системе. Чтобы вывести этот текст, Flash предлагает вам выполнить так называемую подстановку шрифта, т.е. заменить отсутствующий шрифт другим, установленным в системе. Конечно, при этом текст исказится, но зато вы сможете просмотреть, отредактировать документ и даже экспортировать его в формат Shockwave/Flash. Интересная особенность Flash: после подстановки шрифтов он не сохраняет об этом сведений. Давайте поясним это на такой ситуации. Предположим, что вы открыли документ Flash, присланный вашим коллегой, и у вас в системе не оказалось необходимого шрифта. Вы заменили этот шрифт (назовем его изначальным) на другой, установленный в вашей системе, и открыли-таки документ. После этого вы изменили что-то в документе, возможно, отредактировали текст, но не меняли изначальный шрифт на другой. Затем вы сохранили этот документ. Позднее вы все-таки нашли нужный вам шрифт, установили его и снова открыли этот документ. И после этого он будет набран именно тем, изначальным шрифтом. Однако Flash может делать не все. Некоторые задачи лучше всего выполнить в других программах, а потом импортировать во Flash результаты их работы. И профессиональные Flash-художники так и делают. В самом деле, каждую задачу лучше всего решать с помощью наиболее подходящего инструмента. Ведь никто не забивает гвозди микроскопом, хотя теоретически это вполне возможно. Для забивания гвоздей служит молоток (если кто этого не знает). Для редактирования растровой графики служат программы растровых редакторов, например, Adobe PhotoShop и Macromedia Freehand. Для очень сложной векторной графики есть более мощные, чем Flash, векторные редакторы: Corel DRAW! и Macromedia Freehand. Есть также специальные графические программы, например, AutoDesk AutoCAD, служащая для создания чертежей и схем, и Microsoft Visio, где так удобно и приятно рисовать бланки. Каждый из перечисленных выше программных пакетов - в своей области узкий специалист. Полнота его односторонняя, как у недоброй памяти флюса, но свою задачу он знает великолепно. А что же Flash? Задача Flash - принести в Интернет компактную векторную графику и интерактивную анимацию, которая не слишком бы "нагружала" маломощные клиентские компьютеры. Fl^h не работает со сверхсложной графикой, не создает сверхмощные программы и не редактирует растровые изображения. Но свою прямую задачу он выполняет на "отлично", о чем говорят цифры, показывающие его распространение в Сети. У создателей Flash не было намерения объять необъятное.
Если вы хотите импортировать во Flash файл не поддерживаемого им графического формата, вам придется найти программу, поддерживающую этот формат. С ее помощью вы сможете преобразовать этот файл к формату, поддерживаемому Flash. Однако будьте готовы к тому, что при таком преоб¬разовании возможны потери некоторой информации.
Существует два способа импортировать во Flash графику, созданную в другом графическом пакете. Мы рассмотрим их оба. Первый способ вам уже знаком. Мы пользовались им, когда создавали графическую заливку в главе 6. Давайте вспомним, что мы тогда делали. Второй способ еще проще. Запустите программный пакет, откройте в нем нужный файл или создайте его заново, скопируйте нужный графический фрагмент или все изображение в буфер обмена Windows и вставьте его во Flash. Импортированное вами графическое изображение будет тотчас помещено на рабочий лист и выделено. Вы можете перемещать его, пользуясь "стрелкой выделения", помещать его в буфер обмена и выполнять другие операции, доступные для выделенных графических фрагментов. Кроме того, импортированное изображение помещается в качестве образца в библиотеку. Так что вы можете в дальнейшем создавать сколько угодно экземпляров этого изображения на листе, а размер файла Flash при этом не увеличится. (О библиотеках, образцах и экземплярах см. главу 10.) Кстати, есть возможность импортировать графическое изображение прямо в библиотеку, не помещая его на рабочий лист. Для этого выберите пункт Import to Library в меню File. На экране появится стандартное диалоговое окно открытия файла Windows. Найдите нужный файл и нажмите кнопку открытия файла этого диалогового окна.
Перед импортом графики Illustrator во Flash разгруппируйте все сгруппированные графические фрагменты. Если этого не сделать, Flash не сможет правильно их обработать. После выбора файла Illustrator в стандартном диалоговом окне открытия файла на экране появится диалоговое окно выбора параметров импорта Illustrator Import. Оно показано на рис. 8.3.
Поскольку AutoCAD не поддерживает стандартные системные шрифты, при импорте возможно искажение текста. Также AutoCAD не поддерживает заливки, поэтому вся импортированная графика будет состоять из одних контуров.
Когда вы рисуете что-то на уже существующем изображении, Flash руководствуется только одним правилом: то, что нарисовано позже, лежит выше. Поэтому, если вы зачеркнете нарисованный прямоугольник, линии зачеркивания будут находиться поверх него. Есть только одно исключение из этого правила: группы и экземпляры библиотечных образцов всегда находятся выше обычной графики. Чтобы переместить обычную графику выше, вам придется или сгруппировать ее, или преобразовать в образцы и поместить на рабочий лист их экземпляры. Часто бывает необходимо переместить какой-либо графический фрагмент выше или ниже в "стопке" фрагментов, "сложенных" на листе. Для этого Flash предлагает различные пункты подменю Arrange, расположенное в меню Modify. Если вам нужно переместить какой-либо графический фрагмент выше или ниже в порядке перекрытия, выберите соответственно пункт Bring to Front или Sent to Back этого подменю. Вы также можете нажать комбинацию кла¬виш <аг1>+<8ЫЙ>+<Т>или <Ctrl>+<Shift>+<;> соответственно. Если вам нужно переместить какой-либо графический фрагмент на самый верх или в самый низ, вам следует выбрать соответственно пункт Bring Forward или Sent Backward этого подменю. Аналогичные комбинации клавиш: <Ctrl>+<t> и <Ctrl>+<i>. Вы также можете выполнять эти операции сразу над несколькими выделенными графическими фрагментами. Помните только, что порядок перекрытия внутри самой выделенной группы не меняется.
Однако и графику часто бывает необходимо выровнять, скажем, по верхней стороне листа или по правой стороне самого правого фрагмента в выделенной группе. Часто выполняется также центрирование выделенных фрагментов по горизонтальной или вертикальной оси. Выравнивание графики выполняется с помощью панели Align. Чтобы вызвать ее на экран, выберите пункт \N?,!, меню Window или нажмите комбинацию клавиш <Ctrl>+<K>. Также вы можете выбрать пункт Align подменю Panels контекстного меню выделенного графического фрагмента.
Если у вас нет на экране инструментария, и, таким образом, кнопка модификатора "изменение размеров" недоступна, вы можете воспользоваться меню. Для этого вам даже не нужно будет выбирать инструмент "транс¬форматор". Просто выберите пункт-выключатель Scale подменю Transform меню Modify. Также вы можете выбрать пункт Scale контекстного меню выделенного фрагмента.
Выделенный фрагмент графики будет иметь при этом вид, такой же, как при выбранном модификаторе "изменение размеров". Он снова вписан в прямоугольник выделения, на углах которого расположены такие квадратные маркеры поворота, а на сторонах - маркеры сдвига. Чтобы повернуть фрагмент, перетащите мышью один из угловых маркеров, не важно, какой. Если вы хотите повернуть фрагмент на угол, кратный 45°, то при перетаскивании маркера удерживайте нажатой клавишу <Shift>. Чтобы выполнить сдвиг, перетащите маркер, находящийся на стороне прямоугольника. В центре прямоугольника, в который вписан ваш фрагмент, находится белая точка. Это центр вращения фрагмента, вокруг него осуществляется поворот. (Его также называют точкой фиксации.) Вы можете перетащить его в другое место, даже вынести за пределы прямоугольника. Чтобы вернуть его обратно в центр фрагмента, дважды щелкните по нему мышью. Если вам нужно быстро повернуть выделенный фрагмент на 90°, воспользуйтесь меню. Пункт Rotate 90° CW в подменю Transform меню Modify поворачивает фрагмент на 90° по часовой стрелке, а пункт Rotate 90° CWW - против часовой стрелки. Вместо выбора этих пунктов вы можете нажимать комбинации клавиш <rtrl>+<<^hift>+<9> и <Ctrl>+<Shin>+<7; соответственно. И, конечно же, вы можете повернуть или сдвинуть фрагмент, воспользовавшись панелью Transform. Выведите ее на экран. После этого включите переключатель Rotate и введите в расположенное справа от него поле ввода нужный угол поворота. Чтобы выполнить сдвиг, вам нужно будет включить переключатель Skew и ввести в расположенные справа от него поля ввода нужные углы сдвига: горизонтального - в левое поле ввода, вертикального - в правое. Теперь остается нажать клавишу <Enter> - и дело сделано.
Чтобы выбрать свободную трансформацию, проще всего отключить все кнопки-выключатели, "ответственные" за модификаторы инструмента "трансформатор". Все эти кнопки находятся в области Options инструментария, Также вы можете выбрать пункт Free Transform подменю Transform меню Modify или контекстного меню выделенного фрагмента. Чтобы выполнить то или иное преобразование, поместите курсор мыши над нужным маркером прямоугольника выделения. Курсор мыши примет при этом "говорящую" форму. Скорее всего, вам придется некоторое время подвигать курсор возле разных маркеров, прежде чем он примет нужную форму. После этого "захватите" маркер и переместите его на новое место, как и в случае других модификаторов. По нашему мнению, свободная трансформация более пригодна для достаточно опытных художников. Начинающим же будет очень полезно потренироваться, чтобы овладеть этим мощным инструментом Flash MX. А именно, преобразовывать графические фрагменты в образцы и помещать их в библиотеки. А впоследствии извлекать нужный образец из библиотеки и создавать экземпляры этого образца на рабочем листе. Ну и, конечно, управлять содержащимися в библиотеке экземплярами: править, удалять и т. п. Давайте возьмем гипотетическое изображение Flash, содержащее множество мелких одинаковых элементов. Не будем придумывать, что это за изображение, просто представим себе его. Каждый его элемент описывается некоторым набором графических примитивов, а, значит, занимает место в памяти и на диске. Десять таких элементов занимает в десять раз больше места, сто элементов - в сто раз больше и т. п. Представляете, во сколько раз увеличится результирующий файл Shockwave/Flash? Теперь давайте рассуждать так. Что представляет собой этот огромный файл? Повторяющийся набор описаний абсолютно одинаковых элементов - и больше ничего. Мы описываем много раз одно и то же! Нельзя ли нарисовать этот повторяющийся элемент один раз, а потом просто ставить в нужных местах ссылку на его описание? В этом случае мы сэкономим уйму места: ссылка на описание графического элемента занимает несравнимо меньше места, чем сам этот графический элемент. Возможно, ли такое сделать во Flash? Конечно. Если бы не было возможно, мы бы об этом не говорили. В этом случае описание графического элемента помещается в особое хранилище, называемое библиотекой, а сам этот элемент получает название образца(в терминологии Flash - symbol). Каждому образцу дается при создании уникальное имя, по которому его можно опознать, и определенный тип, задающий его свойства. Теперь в нужном месте на рабочем листе мы ставим ссылку на этот образец, создавая тем самым экземпляр образца или просто экземпляр (в терминологии Flash - instance). Такой подход имеет еще одно преимущество. Вы можете изменять все экземпляры одного образца, просто отредактировав этот образец в библиотеке. Более того - вы можете менять некоторые параметры этого экземпляра. Например, сменить его цвет, прозрачность, повернуть его, исказить или из¬менить его размеры. И, тем не менее, он останется экземпляром. Если вы отредактируете образец в библиотеке, этот измененный экземпляр также обновится. Flash также позволяет вам создавать разделяемые библиотеки. Такие библиотеки вы можете выкладывать в Интернет, чтобы другие пользователи Flash могли использовать их содержимое. При этом проигрыватель Flash, загрузив изображение, в котором был использован образец из разделяемой библиотеки, автоматически загружает файл библиотеки и извлекает из нее нужный образец. Таким образом, размер файла Shockwave/Flash уменьшится еще сильнее. Однако если проигрыватель Flash не сможет загрузить файл разделяемой библиотеки, изображение не будет показано правильно. А напоследок мы поговорим о мощном инструменте организации вашей Flash-графики. Это так называемый Проводник Flash, аналогичный по назначению Проводнику Windows. С его помощью вы сможете быстро отыскивать образцы, экземпляры и прочие графические элементы, содержащиеся в вашем творении.
Графический образец (graphic) представляет собой обычное сГатичное или анимированное изображение, сделанное во Flash или импортированное из другой программы. Это, вероятно, наиболее часто используемый тип образцов. Образец-кнопка (button) • - это особый образец, представляющий собой обычную командную кнопку. Такие образцы используются для создания графического пользовательского интерфейса для написанных на Flash программ и рассматриваются во всех подробностях в главе 20. Образец-клип (movie clip) представляет собой настоящий фильм, созданный во Flash или другом программном пакете, импортированный в текущий документ Flash и помещенный на рабочий лист как часть изображения. Такой образец "работает" совершенно независимо от основного изображения, частью которого является. Образцы-клипы применяются для создания очень сложной анимации. Кроме того, по сравнению с графическими образцами, образцы-клипы предоставляют дополнительные возможности для программирования своего поведения, поэтому часто используются при создании пользовательского интерфейса. Мы изучим образцы-клипы во время рассмотрения создания анимации в среде Flash (часть 3 книги). Flash предоставляет также возможность переопределить тип на уровне не образца, а экземпляра. Это значит, что вы можете поместить на лист экземпляр какого-либо образца и переопределить его - экземпляра - тип; тип образца при этом не изменится. Сейчас это не принесет нам пользы, но в дальнейшем, при изучении анимации и программирования (части 2 и 5), может пригодиться. Кроме перечисленных выше трех типов, Flash поддерживает еще три: образец-растровое изображение (bitmap), образец-звук (sound) и образец-импортированный клип (embedded video). Их также собирательно называют импортированными образцами. Как вы уже поняли, образцами-растровыми изображениями становятся импортированные в документ растровые изо¬бражения, а образцами-звуками - импортированные звуки. Эти два типа образцов не могут быть созданы непосредственно во Rash, в отличие от графических образцов, кнопок и образцов-клипов. Кроме публикации, вы можете выполнить экспорт изображения. Экспорт отличается от публикации тем, что при создании изображения Flash не проводит никакой оптимизации. Поэтому экспортированные файлы плохо подходят для распространения графики, но зато прекрасно редактируются в других графических программах. Давайте рассмотрим публикацию и экспорт изображений Flash.
Практически всегда неподвижные, статические изображения сохраняются для дальнейшего распространения в двух форматах: GIF и JPEG. В последнее время, в связи с событиями вокруг формата GIF, постепенно, хотя и очень медленно, набирает популярность формат PNG. (Иногда используется также формат BMP и некоторые другие, но довольно редко.) Вы, конечно же, заметили, что все три этих формата - растровые. Растровая графика традиционно лидирует, когда дело доходит до распространения изображений. Это происходит потому, что растровая графика требует существенно меньше системных ресурсов для вывода ее на экран. Конечно, она проигрывает векторной в возможности обработки, но скажите честно, вы часто занимаетесь тем, что вращаете, искажаете и перекрашиваете полученные из Сети картины в стиле "фэнтези"? Вы их просто смотрите, не так ли? Векторная графика, в отличие от растровой, используется практически только при создании изображений. Точнее, использовалась, пока не появился пакет Macromedia Flash и, вместе с ним, одноименный формат векторной графики, предназначенный именно для ее распространения. Можно сказать, что Flash осуществил прорыв, принес векторную графику конечному потребителю графических изображений. Но даже графика Flash имеет достаточно узкую область применения, остальные области прочно удерживает за собой растровая графика. Так какой же формат выбрать? На каком из них остановиться? Формат GIF, как вы уже знаете из главы 4, прекрасно подходит для сохранения и распространения штриховых рисунков с небольшим количеством цветов, таких, как схемы, карты, карандашные рисунки, элементы оформления Web-страниц и т.п. При сохранении графики в формате GIF выполняется сжатие массива данных по алгоритму, исключающему потери данных. Так что файлы GIF получаются весьма компактными. Формат PNG - прекрасная альтернатива GIF. Он особенно хорош тем, что разработан группой независимых исследователей и абсолютно бесплатен. GIF же - увы! - стоит денег. Фирма UniSys, владеющая патентом на алгоритм сжатия, на редкость некстати вспомнила об этом. Так что если вы озабочены возможным переходом формата GIF в разряд платных продуктов, сохраняйте свою графику в файлах PNG. Тем более, что PNG предоставляет несравнимо больше "наворотов", чем старенький GIF.
Вы также можете быстро просмотреть результаты экспорта изображения в так называемый формат по умолчанию. Таким форматом Flash считает тот, что выбран в окне Publish Settings (см. рис. 11.1) первым, если считать сверху вниз. В нашем случае таким форматом будет GIF. Чтобы просмотреть опубликованное в таком формате по умолчанию изображение, выберите пункт Default - (<Название формата>) в подменю Publish Preview меню File или нажмите клавишу <F12>.
Как раз десять лет назад появились достаточно быстродействующие компьютеры и достаточно емкие жесткие диски, чтобы обрабатывать и хранить компьютерное видео. И именно в то время возникло понятие "мультимедиа" (multimedia), обозначавшее совокупность текстовых, цифровых, звуковых и видеоданных, объединенных в единое целое. Давайте выясним, почему для хранения и обработки видео нужно больше ресурсов, чем для обычной компьютерной графики. Вероятно, вы знаете, что кино- или видеофильм можно представить как набор множества неподвижных изображений (кадров), очень быстро, несколько раз в секунду, сменяющих друг друга. Так как человеческий глаз не может уследить за сменой одного изображения другим, субъективно этот непрерывный "поток" изображений выглядит как одна движущаяся картинка. Для достижения такого эффекта частота кадров фильма должна быть довольно велика. Каждый фильм фактически представляет собой огромное количество статичных изображений. Чтобы сохранить их в цифровом виде, нужен носитель весьма большой емкости. Поэтому для сохранения фильмов используют алгоритмы сжатия с потерями. Но здесь первопроходцев компьютерного кино подстерегает другой подводный камень: для распаковки таких фильмов и вывода изображения на экран нужны огромные вычислительные мощности. А такие мощности появились в распоряжении рядовых пользователей только десять лет назад. Да и то, тогдашние фильмы не блистали качеством. Вероятно, самым первым форматом записи фильмов был QuickTime, разработанный фирмой Apple для компьютеров Macintosh и позднее перенесенный на Microsoft Windows. Фирма Microsoft в ответ разработала программный пакет Video for Windows и формат записи фильмов AVI, позволяющий использовать различные алгоритмы сжатия. Несколькими годами позднее, когда мощности персональных компьютеров еще возросли, независимая группа MPEG разработала очень сильный для своего времени алгоритм сжатия MPEG 1. Именно в этом формате записывались диски VideoCD - первый и не слишком удачный опыт создать цифровое кино "для народа". Вероятно, вы видели эти диски, не могли не видеть. VideoCD - это обычный компакт-диск, на который записывался один огромный файл формата MPEG 1 с расширением dat; на одном таком диске помещалось около часа видео, поэтому полноразмерные фильмы поставлялись на двух дисках. Качество видео было очень плохим, фильмы смотрели на компьютерах с помощью специальных программ, открывая их в маленьком окошке, или на особых проигрывателях, похожих на видеомагнитофоны. Бизнес по продаже дисков VideoCD был развит вольно сильно: автор припоминает, что видел в Волгограде магазин, торгующий фирменными дисками с отечественным кино. Но все, же VideoCD - один из тех многочисленных блинов, что, будучи первыми, выходят комом. Существуют также альтернативные форматы записи видео на обычные компакт-диски. Разработан SuperVideoCO на который помещается до двух часов видео, сжатого по алгоритму MPEG 2 создан великий и ужасный DivX альтернативная реализация алгоритма MPEG 4 - позволяющий записывать полноразмерный фильм отличного качества на один CD. Эти форматы, в основном DivX, составляют серьезную конкуренцию DVD, будущее которого сегодня выглядит не так уж и безоблачно.
Каждый из множества кадров, составляющих фильм, занимает при хранении определенное пространство на диске. Предположим, что это пространство составляет 100 килобайт - для хранения полноцветного изображения высокого разрешения в формате JPEG этого даже маловато. Теперь предположим, что таких изображений у нас 100 000 - такой длинный у нас фильм. Умножаем 100 на 100 000 и получаем 10 000 000, т. е. примерно 10 гигабайт. (Примерно, потому что гигабайт - это не 1 000 000 000, а 1 073 741 824 байт.) Выходит, для хранения фильма нам нужен целый жесткий диск, а уж сколько для этого понадобится компакт-дисков, просто страшно подумать. Этот фильм даже на DVD не влезет! Конечно же, надо сжать фильм посильнее. И, если можно, сжать не только сами кадры, но и саму их последовательность, выбросив часть информации, без которой можно и обойтись. И, разумеется, сжать звуковое сопровождение. Для сжатия фильмов используются специальные алгоритмы, реализующие сжатие с потерями. В этом случае при сжатии какая-то часть информации, не очень нужная при воспроизведении, действительно выбрасывается из фильма, за счет чего последний становится заметно меньше. Более того, эти алгоритмы анализируют каждый кадр фильма и сохраняют в результирующем файле только данные о разнице между соседними кадрами. Это еще сильнее уменьшает размер сжатого фильма. Вот поэтому для сохранения покадровой анимации и применяются только растровые форматы. Если же сохранить такую анимацию в векторном формате, ее будет очень трудно, практически невозможно сжать с применение одного из обычно применяемых для этого алгоритмов. Да и процессорн ч ресурсов во время вывода на экран такая анимация будет потреблять значительно больше растровой. Такие алгоритмы, как MPEG 4 и DivX, позволяют поместить полноразмерный фильм на обычный компакт-диск, т. е. размер сжатого с их помощью видеофайла составляет 600-720 мегабайт. Это уже вполне приемлемые параметры, учитывая объемы современных жестких дисков. Именно эти два алгоритма, как нам кажется, и совершили "компьютерно-киношную" революцию, создав высококачественное цифровое кино "для народа". То есть, сделали то, чего не удалось сделать VideoCD. Но здесь возникает другая проблема. Сжатые сильными алгоритмами фильмы могут "осилить" только достаточно мощные компьютеры. Если вы попробуете просмотреть фильм DivX на компьютере пятилетней давности, то увидите не нормальный фильм, а слайд-шоу. Это происходит потому, что слабосильный процессор не успевает распаковывать данные и выдавать их на экран и поэтому вынужден пропускать целые кадры. К счастью, никому в голову не приходит запускать цифровое кино на старых компьютерах. А современная компьютерная техника сейчас достаточно дешева.
Скажем честно, такая анимация, какая изображена на рис. 12.1, сама просится в векторный вид. Сами посмотрите - ведь простейшая графика, линии и заливки.) Далее, предположим, что мы можем описывать с помощью формул не только форму кривых и прочих графических примитивов, но и их поведение. Следовательно, мы можем изменить форму "рта", просто вызвав нужную формулу и подставив в нее нужные параметры. Что у нас получится? А получится у нас трансформационная анимация. От покадровой она отличается тем, что не описывает каждый кадр последовательности отдельно, а сразу задает поведение того или иного графического примитива. А собственно созданием анимации, движения, занимается программное обеспечение, поддерживающее соответствующий формат файлов. Как вы уже поняли, векторная графика и трансформационная анимация -братья навек. Как трансформационная анимация немыслима без векторной графики (к растровому изображению ее применить просто невозможно), так и векторной графике сам Бог велел добавить трансформационную анимацию. Однако хоть векторная графика как способ представления изображений существует довольно давно, трансформационная анимация возникла только в последние годы. Фактически трансформационную анимацию создал пакет Flash, если до него и существовали какие-то аналогичные разработки, то они остались неизвестными широкой публике.
Позволяет хранить и видео-, и аудиоинформацию в одном файле с расширением mov. Для сжатия данных используется одноименный алгоритм. Степень сжатия довольно велика, но качество получающегося фильма не очень высоко по сравнению с качеством, обеспечиваемым алгоритмами группы MPEG и DivX. Поэтому формат и алгоритм QuickTime в последнее время теряет свои позиции. За прошедшие десять лет формат QuickTime получил довольно большую популярность, в основном, для создания коротких музыкальных, рекламных или обзорных видеоклипов. Абсолютный лидер на платформе Macintosh. В Web-дизайне применяется крайне редко. Насколько известно автору, для распространения полноразмерных фильмов вообще не применяется, хотя в этом формате часто распространяются музыкальные видеоклипы.
Как уже говорилось, группой MPEG было разработано три алгоритма для сжатия видеоданных.
Видеофайлы, сжатые с использованием старых версий этого алгоритма, записывались в формате AVI. Версия 5, появившаяся совсем недавно, также поддерживает формат MPEG. Иногда файлы формата AVI, сжатые этим ал¬горитмом, имеют расширение divx. Формат DivX используется, в основном, для распространения полнометражных фильмов на обычных компакт-дисках (для этого он, собственно, и создавался). Очень часто такие диски содержат пиратские копии фильмов, из-за этого формат DivX считается чуть ли не незаконным, "хакерским", хотя в самом его существовании нет ничего противозаконного. Совсем недавно формат DivX получил признание крупных разработчиков игр, распространивших в этом формате демонстрационные ролики. В Web-дизайне формат DivX не применяется.
Видеофайлы, сохраненные в этом формате, имеют расширение wmv или asf. (Существует особая разновидность формата - WMA (Windows Media -Audio), предназначенная для хранения звука, такие файлы имеют расширение wma.) По сравнению с AVI формат WMV имеет различные дополни¬тельные возможности, в частности, средства защиты от несанкционированного копирования. В настоящее время этот формат стремительно набирает популярность. Но используется он опять же для распространения полноразмерных фильмов и видеоклипов.
Позволяет хранить и видео-, и аудиоинформацию в одном файле с расширением U. Для сжатия данных используется одноименный алгоритм. Степень сжатия весьма велика, и достигаемое при сжатии качество фильма также достаточно высоко. В настоящее время удерживает довольно большую долю рынка "сетевого видео" и терять ее не собирается. В основном, применяется для распространения фильмов различной длительности и назначения и трансляции так называемого "интернет-телевидения". В Web-дизайне применяется крайне редко. Главное преимущество Flash в том, что он предлагает непревзойденное со¬четание достаточно богатых возможностей создания неподвижных изобра¬жений, анимации и интерактивности. В этом смысле все вышеперечислен¬ные программы просто отдыхают. При всех их немалых достоинствах никто из них не может того, что может Flash. Если кто-то скажет, что это не так, напомните ему статистические данные. То, что проигрыватель Flash установлен на 95% всех компьютеров мира, -правда. Напомним, что представляет собой покадровая анимация. Это последовательность большого количества однотипных кадров, изображающих различные фазы движения. Такая последовательность очень быстро прокручивается перед зрителем, в результате чего он видит непрерывное движение. Как видите, все достаточно просто. Остается добавить, что на принципе покадровой анимации основаны весь кинематограф и все телевидение. Так что с покадровой анимацией вы сталкиваетесь, когда смотрите вечерние новости. Но, если вы не хотите рисовать слишком долго, вам на помощь придут средства Flash по созданию трансформационной анимации. Если Flash используется для подготовки Web-графики (элементы оформления Web-страниц, анимированные рекламные байкеры, небольшие фильмы), то зачастую вся анимация ограничивается простейшими движениями какого-либо элемента. А такие движения элементарно реализуются с помощью трансформационной анимации (так называемая трансформация движения). Вам нужно будет только нарисовать два ключевых кадра последовательности - начальный и конечный - и сделать несколько щелчков мышью. Конечно, если ваша анимация сложнее, чем простое движение "из точки А в точку В", вам придется также создать дополнительные ключевые кадры, во всех точках, где движение элемента изменяется. Более того, с помощью Flash вы можете заставить какой-либо элемент менять свой цвет или прозрачность, последнее нужно, если вы хотите сделать элемент постепенно появляющимся или исчезающим. А еще средствами Flash можно реализовать морфинг - плавное изменение формы любого эле¬мента. Этот вид анимации называется трансформацией формы. Так что средства трансформационной анимации Flash не так уж и бедны, как вы могли подумать, читая главу 12, где подробно описывались оба вида анимации. Кроме меньшей трудоемкости, трансформационная анимация имеет еще одно достоинство перед покадровой: она занимает меньше места. В самом деле, вместо того, чтобы хранить все кадры фильма, программа записывает в файл только несколько чисел - параметры функции, реализующей эту анимацию. Сравните объем десятка изображений, пусть даже и векторных, и объем, занимаемый этими числами. Даем гарантию - это сравнение будет отнюдь не в пользу покадровой анимации. Основным недостатком трансформационной анимации является ее бедность. Хоть Flash и предлагает нам достаточно мощные средства "оживить" изображения "малой кровью", красивые и сложные мультфильмы вы из одних трансформаций не сделаете. Если вы мечтаете о карьере в художественной анимации, то - увы!.. - готовьтесь опять же рисовать бесчисленные кадры, один за другим, один за другим... Слой (в терминологии Flash - layer) можно рассматривать как лист прозрачной пленки, лежащий на рабочем листе Flash. Вы можете рисовать на слое, используя изученные в главе 5 инструменты рисования. Кроме того, вы можете класть поверх этого слоя или под ним другие слои, на которых тоже что-то нарисовано. И, наконец, можно легко переключаться между слоями, чтобы работать с нарисованной на них графикой. Каждый слой имеет уникальное имя, с помощью которого он однозначно идентифицируется. Выясним теперь преимущества, даваемые слоями. □ В главе 5 вы познакомились с фрагментацией и слиянием графических фрагментов. В качестве борьбы с этим явлением предлагались группировка, преобразование фрагмента графики в образец и "разнесение" фрагментов по разным слоям. В самом деле, если какие-либо графические фрагменты находятся в разных слоях, то они не будут ни фрагментироваться, ни сливаться. А все потому, что они не соприкасаются друг с другом. □ Вы уже знаете, что методом трансформации движения можно анимировать только один графический элемент в слое. Но если слоев может быть сколько угодно, то и количество анимированных элементов тоже не ограничено. Каждый анимированный элемент находится в своем слое, не мешая, таким образом, другим анимипоняиным элементам. Единственный недостаток такого подхода: в сложных фильмах слоев может быть очень много. □ Создание некоторых специальных эффектов, таких, как слои-направляющие и маскирующие слои. Еще нужно сказать, что слои сами по себе не увеличивают размер файла изображения Flash. Увеличивает его размер только графика, расположенная в этих слоях. Но мы также знаем, что трансформацию движения можно применить над единственным элементом в слое. Выходит, что нам для достижения своей цели нужно "разбросать" все буквы надписи Flash по разным слоям! Но как это сделать? Неужели придется создавать все пять слоев, рисовать на них буквы и следить, чтобы они находились на своих местах? Нет ли другого способа сделать это? Есть. Flash содержит встроенные средства для распределения выделенных графических элементов по разным слоям. Таким образом, если вы выберете несколько графических элементов, Flash создаст нужное количество новых слоев и поместит в них эти элементы. Распределенные по слоям элементы пропадут с изначального слоя, где они находились до распределения, остальное же содержимое этого слоя останется нетронутым.
Вы можете перемещать слои в списке, меняя порядок их перекрытия друг другом. Для этого просто перетащите нужный слой мышью на новое место. Есть три способа выделить в списке нужный слой. Во-первых, вы можете щелкнуть по нему мышью в списке слоев, после этого все содержимое этого слоя на рабочем листе будет выделено. Во-вторых, вы можете щелкнуть по любому кадру анимации, созданной в этом слое. В-третьих, вы можете просто выделить на рабочем столе один из графических фрагментов, находящихся в этом слое. (Помните: все слои прозрачны, поэтому сквозь пустое пространство слоев вы можете видеть все, что находится под ними.) Вы можете также выделять сразу несколько слоев в списке. Если вам нужно выделить непрерывную группу слоев, щелкните по первому слою в группе, нажмите клавишу <Shift> и, удерживая ее, щелкните по последнему слою в группе. Если же вам нужно выделить несколько несвязанных слоев, сначала щелкните по первому, а потом продолжайте щелкать по остальным, удерживая нажатой клавишу <Ctrl>. Как видите, здесь работает та же методика, что и в Проводнике Windows. Слои можно переименовывать. Для этого дважды щелкните по имени нужного слоя. После этого вместо его имени появится небольшое поле ввода, в котором будет поставлено старое имя слоя. Введите новое имя и нажмите клавишу <Enter>. Если же вы передумали менять имя слоя, нажмите клавишу <Esc>. Удалить ненужный слой вы можете разными способами. Проще всего выделить слой, который вы хотите удалить, и нажать кнопку Delete Layer (рис. 15.9), расположенную в нижней части списка слоев. Также вы можете перетащить ненужный слой прямо на эту кнопку. Ну и, наконец, вы можете выбрать пункт Delete Layer в контекстном меню выделенного слоя. Учтите только, что при удалении слоя удаляется также вся расположенная в нем графика.
Вы можете думать, что маска - это отверстие в непрозрачном маскирующем слое. (Обычно слои, как вы знаете, прозрачны.) Сквозь это отверстие можно видеть все, что лежит под этим слоем. Отверстие может быть любым графическим фрагментом: геометрической фигурой, экземпляром (только не кнопкой) или текстовым блоком. Наконец, это отверстие может быть ани-мировано методами трансформационной анимации. И все же мы кое-что скажем. Как-никак, статичная графика и анимация - вещи очень разные, а во многом - диаметрально противоположные. Прежде всего, нужно сказать, что Flash позволяет как внедрять импортированное видео в файл документа Flash, так и создавать ссылку на внешний видеофайл. В первом случае говорят о внедренном в документ Flash клипе, а во втором - о клипе, связанном с документом Flash. Маленькие видеофайлы, как правило, внедряются в документ Flash, а большие - связываются с ним. К несчастью, поддерживается только связывание с файлами формата QuickTime. Чаще всего приходится импортировать во Flash фильмы, созданные в самом Flash, но другими художниками. Например, вы можете "позаимствовать" удачные анимированные элементы для своего изображения или фигурные кнопки для своей Flash-программы. (О программировании во Flash см. часть 4 этой книги.) Конечно, эти элементы могут быть помещены в обычные или разделяемые библиотеки Flash, но зачастую они просто "лежат" в Сети "россыпью", в виде отдельных SWF-файлов. Поскольку такие файлы имеют небольшой размер, они внедряются в документ Flash, это позволяет сократить до минимума количество файлов, необходимых для показа изображения. Также Flash поддерживает импорт "анимации", отдельные кадры которой хранятся в пронумерованных файлах. Такие наборы изображений могут быть созданы разными графическими программами, в частности, самим Flash. Подобные файлы также внедряются в документ Flash. Видеоклипы, сохраненные в других форматах: QuickTime, MPEG и др. (все поддерживаемые Flash видеоформаты описаны в главе 12), внедряют во Flash значительно реже. Причины этому чисто технические, и заключаются они в том, что, как правило, в таких форматах распространяются полнометражные игровые, документальные и музыкальные фильмы. А файлы, содержащие такие фильмы, занимают очень большой объем, что не может не сказаться на размерах результирующего файла Flash, а значит, на времени его загрузки. Поэтому, такие файлы практически всегда связывают с документом Flash. В результате, внешняя анимация загружается только тогда, когда в ней возникнет надобность. При импортировании во Flash внешних файлов возникает еще один вопрос - о защите авторских прав их создателей (если, конечно, вы не создали эти файлы сами). В самом деле, воровать нехорошо. Поэтому прежде, чем позаимствовать что-либо чужое для своего блага, обязательно выясните, как к этому отнесется владелец. На Web-сайтах, занимающихся распространением графики, обязательно указывается, что с этой графикой разрешено делать. Поэтому будьте внимательны: всегда читайте то, что написано мелким шрифтом. Как вы уже знаете, Flash поддерживает импорт "анимации", отдельные кадры которой хранятся в пронумерованных файлах. Если вы импортируете файл растрового изображения (формата BMP, GIF или любого другого), чье имя кончается числом, Flash ищет аналогичные ему файлы. (Подробнее об импорте статичной графики см. главу S.) Если он находит последователь¬ность таких пронумерованных файлов, например, Рис1.Ьтр, Рис2.Ьтр, РисЗ.Ьтр и т. д., то предлагает импортировать всю эту последовательность как видеоклип. На экране появляется соответствующее предупреждение, нажмите кнопку Yes (Да) или No (Нет). Если вы нажмете Yes, Flash импортирует последовательность файлов и превратит их в клип, если же вы нажмете No, будет импортирован только выбранный вами файл. Если вы хотите связать изображение Flash с внешним файлом, учтите что в данной версии Flash (MX) поддерживается только связывание с файлами QuickTime. Если же вы хотите связать изображение Flash с видеофайлом другого формата, то нужно преобразовать последний в файл QuickTime, воспользовавшись программным пакетом Apple QuickTime.
Когда вы хотите импортировать видеоклип только в библиотеку, выберите пункт Import to Library в меню File. На экране появится стандартное диалоговое окно открытия файла Windows. Найдите нужный файл и нажмите кнопку открытия файла. Если вы собираетесь импортировать файл QuickTime, на экране появится диалоговое окно Import Video (рис. 16.1). В нем находится всего два переключателя. Переключатель Embed video in Macromedia Flash document позволяет вам внедрить видеофайл в документ Flash. А переключатель Link to external video File обеспечивает связывание документа Flash с этим видеофайлом. Поскольку нам нужно внедрить видеофайл в документ Flash, следует включить переключатель Embed video in Macromedia Flash document. И, разумеется, нажать кнопку ОК. Если вы нажмете кнопку Cancel, файл не будет импортирован. Сейчас кино перестало быть чудом, также как воздушные сообщения, телефония и телевидение. Чудо превратилось в бизнес, а что может быть прозаичнее. Люди разговаривают по мобильникам, летают на самолетах, смотрят дома телевизоры, а кино да что о нем говорить - кинотеатры практически умирают. Никто не хочет ходить в кино: его заменило домашнее видео, VideoCD, DVD и DivX. (Говорят, в столицах ситуация получше, чем в провинции, но кто его знает.) Настанет день, когда чудо умрет окончательно, уступив место чему? Единственное, что никогда не умрет, - это магия кинопленки. Магия черно-белых прыгающих лиц тех, кого давно с нами нет... Когда-то компьютеры были большими и медленными, а перерабатывать умели только одни перфокарты или перфоленты в другие такие же перфокарты или перфоленты. Никто и в мыслях не мог допустить, что через несколько десятков лет их далекие потомки станут игрушками для пресыщенных обывателей и их детишек. Как же - такая большая и сложная техника финансировалась военными, очередь была расписана на недели вперед, какие еще игрушки?!! Когда-то Интернет был сплошь текстовым, разбавленным редкими вкраплениями корявых рисунков. В те времена Всемирной Сетью пользовались, в основном, только ученые, военные и государственные чиновники, а что разве нужны этим сухарям дизайнерские изыски? Первым интернетчикам вполне хватало текстовой информации и файлов, никто из них и в страшном сне не мог предвидеть, для чего будет использоваться Сеть через десять лет. Как же можно во время работы качать музыку или смотреть интерактивное видео, когда надо же, елки-палки, работать - за работу казна деньги платит, а не за музыку и видео! Теперь да что рассказывать об этом - сами зайдите в Сеть или хотя бы вспомните, зачем вы заходили туда последний раз! Даже если у вас и было в мыслях найти что-то действительно для дела, вы точно не забывали и о развлечениях. А какие развлечения сейчас наиболее доступны рядовому пользователю Сети? Конечно, музыка. (К сожалению, видео могут смотреть только обладатели достаточно быстрых каналов, которых пока немного. Но со временем предпочтения большинства могут измениться.) История повторяется. И кино, и компьютеры, и Интернет из "великих немых" превратились в "великих болтунов".
Первый способ - кодирование и запись в файл собственно звука. В этом случае к компьютеру подключается микрофон или иной источник звука, и сигнал с него с помощью специальных программ записывается в файл. Такой способ записи звука применяется в подавляющем большинстве случаев. Например, популярные форматы WAV, MP3, VQF, WMA - все это форматы хранения звуковых данных. Преимуществом такого подхода к хранению звука является точное его воспроизведение на любом устройстве. Например, вы можете переписать з формат МРЗ любимые кассеты, и ваша запись будет нормально проиграна на любом компьютере или носимом МРЗ -проигрывателе, хотя, конечно, с разным качеством. Также достоинствами являются возможность записи любых звуков (голоса, природных и искусственных шумов, любых музыкальных инструментов) и легкость обработки (подавления шумов, нормализации и др.). Недостаток, пожалуй, один: большой объем получающегося в результате записи звука массива данных. Чтобы уменьшить массив звуковых данных, применяют различные алгоритмы сжатия. Это может быть сжатие как без потерь, так и с потерями. Как правило, без потерь сжимают звук, предназначенный для дальнейшей обработки, а с потерями - предназначенный для распространения (например, известный формат МРЗ). Иногда звук не сжимают вообще. Кодирование и запись звука - самый распространенный способ хранения звуковых данных. В частности, он используется для распространения музыки на компакт-дисках и в файлах. На компакт-дисках записывается несжатый звук, для распространения в файлах применяются различные алгоритмы сжатия. Также этот способ записи звука служит для создания звукового сопровождения к видеоклипам. Второй способ - хранение в файлах только команд для воспроизведения звука. При проигрывании таких файлов эти команды читаются и выполняются либо специальной программой-проигрывателем, либо соответствующим образом оснащенной звуковой картой компьютера. Для создания таких файлов используются специальные программы или музыкальные синтезаторы, опять же в совокупности со специальными программами. Для воспроизведения собственно звука проигрыватели файлов и звуковые карты имеют примеры звучания реальных инструментов или различных реальных или синтезированных звуков, называемые инструментами или сэмплами. Для удобства загрузки и управления инструменты объединяются в банки инструментов. Некоторые очень старые программы и звуковые карты применяют для вывода звука метод частотного синтеза, но качество такого звука очень плохое. Достоинством второго способа является компактность получающихся файлов. В самом деле, чтобы записать пару байт, составляющих команду, много места не нужно. Недостатки: невозможность записи любых звуков (только тех, для которых в используемом банке инструментов есть соответствующие сэмплы) и зависимость воспроизводимого звука от используемой программы, звуковой карты и банка инструментов. Второй способ используется практически для тех же целей, что и первый. С его помощью можно записывать и распространять музыку, хранить репетиционные записи (они занимают немного места), помещать музыкальное сопровождение в различные программы и на Web-сайты. Самые распространенные форматы записи звука вторым способом: MIDI и WАV. Как ни странно, но третий способ записи звука не снискал особой популярности. В настоящий момент его используют только особые "малобюджетные" программы создания музыки, называемые трекерами. Файлы, создаваемые с помощью трекеров, называются трекерными модулями. Существует целая подпольная трекерная субкультура, живущая своей особой жизнью, но почти не известная "в миру". Часто, говоря о форматах записи звуки и программах для создания музыки, трекеры даже не упоминают.
Файл формата WAV имеет "говорящее" расширение wav. Звуковые данные могут быть сжаты с использованием любого алгоритма, для которого в системе установлен кодек, в том числе, популярным алгоритмом MPEG 1 уровень 3, или вообще не сжаты. Судя по всему, формат WAV будет применяться и в дальнейшем. Пока что никаких причин отказываться от него нет. И все же, для распространения музыки он применяется очень редко.
Файл этого формата имеет "говорящее" расширение трЗ. Звуковые данные всегда сжимаются с помощью алгоритма MPEG 1 уровень 3. другие алгоритмы не допускаются. Файл МРЗ также может хранить дополнительные данные, называемые тегами. В частности, с помощью тегов сохраняются имя исполнителя, название композиции, название альбома, год записи альбома и жанр музыки. Этому формату, похоже, уготована долгая жизнь. Несмотря на то, что многие фирмы-распространители музыкальной продукции настроены против него, МРЗ полностью завоевал Интернет и сдавать завоеванные позиции не собирается. Более того, этот формат не собирается уступать и более новым форматам записи звука (VQF, OGG Vorbis, MS WMA и др.), хотя более новые разработки обеспечивают лучшее качество звука при значительно меньшем размере файла.
Аудиофайлы, сохраненные в этом формате, имеют расширение wma. Существует также особая разновидность п„ формата - WMV (Windows Media Video), предназначенная для хранения видео, такие файлы имеют расширение v,ir . или asf. По сравнению с WAV и МРЗ формат WMA имеет различные дополнительные возможности, в частности, средства защиты от несанкционированного копирования. В настоящее время этот формат стремительно набирает популярность. Но серьезно поколебать позиции формата МРЗ ему пока не удается. Хотя в будущем, благодаря поддержке крупнейших фирм-распространителей музыки, он вполне может вытеснить МРЗ.
Файл формата RealMedia имеет расширение га. (Существует также разновидность этого формата для хранения видео, файлы, записанные в этом формате, имеют расширение .:. или smil.) Для сжатия данных используется одноименный алгоритм. Степень сжатия весьма велика, и достигаемое при сжатии качество звука также достаточно высоко. В настоящее время удерживает довольно большую долю рынка "сетевого аудио" и терять ее не собирается. В основном, применяется для распространения музыки и трансляции так называемого "интернет-радио".
Файл этого формата имеет расширение mid, midi или nni. Он содержит набор команд воспроизведения звука для программного или аппаратного проигрывателя MIDI (то есть, имеет место второй способ записи звуковых файлов). Из-за этого MIDI-файлы имеют очень маленький размер. В настоящее время удерживает относительно небольшую нишу - распространение музыки по Сети и создание фонового музыкального сопровождения для Web-сайтов.
Импортированные звуковые файлы помещаются в библиотеку в виде образцов-звуков. Таким образом, вы можете создавать сколько угодно экземпляров этого звука, и размер файла Flash при этом не увеличится. Вместо того чтобы искать нужные звуковые файлы или создавать их самим, вы можете воспользоваться библиотекой общего использования Sounds, поставляемой с Flash. Просто выберите пункт Sounds в подменю Common Libraries меню Window - и в появившемся на экране окне библиотеки вы найдете достаточное количество звуковых образцов для своих первых фильмов.
Создание нового слоя мы описывать не будем - об этом достаточно подробно было сказано в главе 15. Желательно, чтобы в рабочем слое не было никакой графики. Вы, конечно, можете поместить несколько экземпляров звука в один слой, но это не рекомендуется. Будет лучше, если вы поместите каждый звук в своем слое: тогда у вас будет больше возможностей по управлению используемыми в фильме звуками. Поместите в слой экземпляр образца-звука. Создайте последовательность кадров нужной длины. Для этого выделите пустое место на временной шкале, где должна заканчиваться ваша последовательность кадров, и выберите пункт Frame в меню Insert, пункт Insert Frame в контекстном меню выделенного пустого места или просто нажмите клавишу <F5>.
Правка выполняется с помощью двух больших графиков, расположенных соответственно в верхней и нижней частях этого диалогового окна. Верхний график позволяет задать изменение громкости, а нижний "отвечает" за панорамирование. Кроме того, в левом и правом нижнем углах этого окна находятся наборы небольших кнопок, которые весьма помогут вам в работе. За доступ к клипу из сценария "отвечает" объект movieClip. Данный объект обеспечивает набор свойств и методов, которые и являются "рычагами управления" клипом. В отличие от встроенных и пользовательских объектов, экземпляр объекта movieClip не нужно создавать с помощью конструктора. Это выполняет сам Оператор typeof для клипа возвращает значение "clip". Зачем нужны встроенные клипы Во-первых, встроенные клипы применяются для создания сложной трансформационной анимации. Как вы помните, Flash может создать только одно движение в слое. Если же вы хотите создать несколько движений или одно сложное движение, вам придется обращаться к покадровой анимации, либо использовать трансформацию формы или встроенные клипы. Поясним это на примере. Допустим, вы хотите создать фильм, который бы показывал автомобиль, перемещающийся справа налево по рабочему листу. Причем, его колеса должны вращаться. Обычная трансформация движения, однако, реализует только одно движение в слое: либо перемещение самого автомобиля, либо вращение только одного колеса. Что делать?
Поэтому, если вы собираетесь делать на Flash нечто большее, чем фильмы с ограниченными возможностями "общения" со зрителем, вам обязательно нужно позаботиться о пользовательском интерфейсе. И не просто слепить пару элементов управления и связать их парой строк кода - вам придется сделать его удобным для пользователя. Иначе пользователь предпочтет вашей программе другую, благо сейчас у него есть широчайшие возможности выбора. Кнопки. Это экземпляры образцов-кнопок, впервые упомянутые в главе 10. Образцы-кнопки не очень отличаются от образцов-клипов, за несколькими исключениями, обусловленными самой их "интерфейсной" природой. Кнопки позволяют привязать обработчики к событию press (щелчок на кнопке) и некоторым другим. Поля ввода и динамические текстовые блоки. Первые позволят принять какие-либо данные от пользователя, а вторые - вывести результаты. Создание полей ввода и динамических текстовых блоков было описано в главе 7. Запомните, что обычные, статические текстовые блоки не могут управляться из сценариев. Пользовательские элементы управления. Это новые элементы управления, не встроенные во Flash, а разработанные вами. Для создания пользовательских элементов управления вы должны использовать встроенные клипы. Как это делается, мы рассмотрим в конце данной главы. Понятие элемента управления неразрывно связано с понятием компонента. (Поэтому мы будем рассматривать их вместе.) Компонентом во Flash называется своего рода "кусок" графики и кода ActionScript, который вы можете вставлять в свои приложения. Все элементы управления, поставляемые с Flash, реализованы в виде компонентов. Вы также можете писать свои компоненты и потом использовать их где угодно и даже передавать коллегам. Компоненты - одно из значительных нововведений, появившихся в программировании в последнее время. (Снобы от программирования, правда, так не считают, но нам с ними не по пути.) Они позволяют создавать весьма сложные приложения, просто собирая вместе отдельные их "кирпичики", возможно, написанные другими разработчиками. Количество средств разработки, поддерживающих компонентное программирование, неуклонно растет, и совсем недавно к ним добавился и наш любимый Flash.
Экземпляры объекта Button создаются самим Flash для каждой кнопки, для которой вы задали имя. Вам самим создавать их не нужно. Ниже будут рассмотрены свойства, которые обязательно пригодятся вам в работе с экземплярами объекта Button. (Многие из них поддерживаются и объектом movieciip.) Свойство enabled позволяет разрешить или запретить доступ пользователя к кнопке. Оно имеет логический тип: значение true разрешает доступ к кнопке, а значение false - запрещает. Свойство visiо позволяет сделать кнопку видимой или невидимой. Оно имеет логический тип: значение true делает кнопку видимой, а значение false - невидимой. Свойство useHandCursor позволяет вам сменить курсор мыши, отображаемый, если мышь поместить над кнопкой. Если задано значение true, то отображается курсор в виде "указующего перста", как над гиперссылкой. Если же задано значение false, то отображается обычная стрелка. Свойство tabindex задает порядок обхода элементов управления при последовательных нажатиях клавиши <ТаЬ>. (При нажатии комбинации клавиш Если ни для одного элемента управления в приложении не задан порядок в очереди обхода (то есть, свойство иох равно undefined), Flash будет применять порядок обхода по умолчанию. Если же вы собираетесь задать порядок обхода, имейте в виду, что значение undefined меньше любого числового. Поэтому элементы управления, для которых свойство tabindex не было задано, будут в очереди обхода первыми. Свойство tabEnabled позволяет убрать кнопку (и вообще любой элемент управления) из порядка обхода, сделать его недоступным для выбора с клавиатуры, но все же доступным для выбора мышью. Это свойство имеет логический тип: значение true или undefined делает элемент управления доступным для выбора с клавиатуры, а значение false - недоступным. Объект Button поддерживает большое количество событий, которые вы можете использовать для написания обработчиков.
Управление форматированием текста осуществляется с помощью объекта TextFormat. Он содержит ряд свойств, с помощью которых и задаются параметры форматирования текста.
С помощью объекта selection вы можете получить позицию текстового курсора в поле ввода. Для этого вам нужно воспользоваться методом getcaretindex. Если же ни одно поле ввода не имеет фокуса, возвращается -1. Методы getBeginindex и getEndindex возвращают номера соответственно начального и конечного символа выделенного фрагмента текста. Если ничего не выделено, опять же возвращается -1. Вы можете выделить нужный фрагмент текста, воспользовавшись методом setselection. Первым параметром этого метода должен быть номер первого символа выделяемого фрагмента, а вторым - номер последнего символа. Запомните, что нумерация символов текста начинается с нуля.
Высший пилотаж Flash-программирования - это создание полноценных приложений, сходных с приложениями Windows. Это могут быть игры, утилиты, калькуляторы, даже текстовые редакторы. Для создания пользовательского интерфейса таких приложений применяются настоящие элементы управления: флажки, переключатели, списки, меню и т. п. Что такое элементы управления Flash? Ничего особенного - обычные клипы, только ведущие себя особым образом, благодаря соответствующим сценариям ActionScript. Элементы управления имеют набор особых свойств и методов, позволяющих задавать и получать их состояние и управлять ими. Задавать начальные значения свойств вы можете как в среде Flash, так и в сценарии. Типичный пример компонента - любой встроенный элемент управления Flash. Но компоненты не обязательно должны представлять элементы пользовательского интерфейса. Они могут быть обычными графическими элементами, которые используются в фильмах, или вообще быть невидимыми и служить только для целей программирования. Примерами такого рода компонентов могут быть фигурный курсор мыши и невидимый компонент, отслеживающий нажатия клавиш клавиатуры и перемещающий заданный клип по рабочему столу. Как правило, любой компонент делается независимым от его окружения. Это значит, что вы можете поместить в свой фильм или приложение некоторый компонент, и он будет работать нормально все зависимости от других компонентов фильма или приложения. Если же один компонент требует наличия на листе других компонентов, то об этом особо указывается в его описании.
Почему? Во-первых, компьютеры двадцатилетней давности были бесконечно слабее современных и просто не могли потянуть даже две одновременно работающих более-менее серьезных программы. Во-вторых, программное обеспечение было принципиально однозадачным, оно просто не могло Позволить пользователю запустить две программы, за редкими исключениями. В-третьих, кому это было нужно: техника делает вид, что работает, пользователи делают вид, что довольны, а значит, зачем напрягаться... Конечно, существовали способы запускать на тогдашней технике сразу несколько программ, но они налагали на программы очень серьезные ограничения. Было даже что-то подобное настоящим многозадачным операционным системам (например, первая версия Microsoft Windows). Но все это так и не получило широкого распространения. Почему? Ответ на этот вопрос содержится в предыдущем абзаце. Потом появилась Windows 3.0, за ней - 3.1, 3.11, 95... Компьютеры существенно прибавили в мощности, а программисты наконец-то поняли, что принцип "один компьютер - одна программа" не так уж и хорош. Многозадачная операционная система MS Windows вытеснила старую однозадачную MS-DOS. И каждый пользователь достаточно мощного компьютера смог уподобиться Юлию Цезарю. Многозадачность принесла еще одну выгоду: теперь разные приложения могли взаимодействовать друг с другом, обмениваясь данными. Первой попыткой реализовать такой обмен данными был DDE (Dynamic Data Exchange - - динамический обмен данными), реализованный еще в Windows 3.0. Данные передавались от приложения к приложению небольшими порциями и весьма неспешно, да и надежность DDE была невысока. Вторая попытка - OLE (Object Linking and Embedding - связывание и внедрение объектов) - была несравнимо удачнее и применяется до сих пор, став частью технологии COM (Component Object Model - компонентная объектная модель). Существует еще несколько способов передачи данных от приложения к приложению, но они не столь распространены. А потом получили широкое распространение компьютерные сети, и в мир пришел Его Величество Интернет. Появились серверные приложения, работающие на серверах, не имеющие пользовательского интерфейса и общающиеся с пользователем по сети. Этим они принципиально отличаются от клиентских приложений, работающих на компьютерах пользователей и взаимодействующих с пользователями напрямую. Самые распространенные и наверняка вам знакомые серверные программы - это сервер почты, Web-сервер, FTP-сервер и сервер баз данных. Пользователь никогда не работает с серверной программой напрямую, а вместо этого использует особые клиентские программы, называемые клиентом или клиентской частью соответствующего сервера. Такие программы формируют запрос, основываясь на введенных пользователем данных, и отправляют его серверному приложению. В ответ последнее возвращает результат обработки этих данных, который клиентское приложение выдает пользователю. Так, для Web-сервера клиентом является Web-обозреватель, а для сервера данных клиентом может выступать любая современная настольная СУБД. В этой главе мы поговорим о том, как осуществить взаимодействие приложения Flash с внешними по отношении к нему программами и выполнить обработку внешних данных. Вы, как открыть Web-страницу в Web-обозревателе, как посылать команды проигрывателю Flash из сценария на ActionScript. Вы научитесь общаться с серверными приложениями, посылать им запросы и принимать от них результаты. И напоследок вы узнаете, как обрабатывать во Flash-приложениях данные, написанные на новомодном языке описания и форматирования данных XML.
Как вы уже знаете, серверные программы работают на удаленных компьютерах под управлением программы Web-сервера, с пользователями напрямую не взаимодействуют, а "общаются" с ними только по сети. По сети они принимают от пользователей запросы и так же высылают им ответы: тексты писем, счета, данные из баз и пр. Стало быть, клиентские приложения, "общающиеся" с серверными, должны уметь преобразовывать запросы пользователей в поддерживаемый серверными программами формат. Ну и, конечно, они должны выполнять обратное преобразование, иначе пользователь ничего не сможет разобрать в возвращенном результате. Flash, как вы уже знаете, делает за вас очень много работы. Он сам кодирует данные, чтобы их можно было нормально передать по протоколу HTTP (HyperText Transfer Protocol - протокол передачи гипертекста), используемому при передаче Web-страниц от сервера к клиенту. (Протоколом называется набор правил обмена информацией по сети, которых должны придерживаться приложения.) Вам остается только правильно сформировать нужный запрос и получить и обработать ответ.
Сейчас мир охватила мода на XML. Очень и очень многие программы спешно обзаводятся поддержкой этого языка, невзирая, нужна она там реально или нет. Не стал исключением и Flash. Уже предыдущая, пятая версия поддерживала данные, отформатированные с использованием этого языка. A Flash MX эту поддержку развил и углубил. Программы содержат ошибки. Не все, конечно, а те из них, что состоят более чем из двух строк кода. (Функционального кода, который что-то реально делает.) Чем больше и сложнее программа, тем больше (теоретически, по крайней мере) в ней ошибок. Вы и сами, конечно, это знаете: уже всем надоели истории об ошибках в операционных системах Microsoft Windows, да и другие большие программные пакеты не лучше. Производители ПО, разумеется, пытаются с этим бороться различными способами, но пока что толку особо не видно. А проистекает все это безобразие опять же оттого, что программы пишутся людьми. А люди есть люди... Разумеется, ошибки необходимо исправлять. (Если вы думаете, что их нужно смывать кровью, попытайтесь вспомнить все совершенные вами ошибки и прикиньте, хватит ли у вас крови все их смыть.) Для этого используются мощные программные отладчики, организуются специальные, весьма дорогостоящие мероприятия, выпускаются бесконечные пакеты обновления и т. д. и т. п. И что в результате? Как говорят злые языки, "исправляются старые ошибки и добавляются новые". Не хотелось, конечно, чтобы это было на самом деле, но люди есть люди! Людям свойственно ошибаться. Хорошо еще, что хоть компьютеры ошибаться не могут в принципе. (Конечно, имеются в виду исправные компьютеры.) Компьютеры лишены свободы воли, они только выполняют программный код, созданный людьми. Для них он всегда правилен. Но хватит философских отступлений. Давайте поговорим о "вылавливании" ошибок, допущенных вами в сценариях ActionScript, и их исправлении. Одним словом, поговорим об отладке сценариев. Но прежде - небольшое теоретическое введение. Рассмотрим средства, которые может использовать Flash-программист, чтобы найти ошибки в своих сценариях.
Синтаксические ошибки - это ошибки и неточности в написании самого кода. Скажем, если вы написали вместо действия else что-то похожее на elswe. Flash предупредит вас о синтаксической ошибке. В самом деле, действия eiswe в языке ActionScript нет, и предупреждение Flash вполне резонно. Мы рассмотрели простейшую синтаксическую ошибку, которая, что называется, бьет в глаза. Более сложная синтаксическая ошибка - вызов несуществующего метода объекта. Тут сразу трудно понять, что вызывает ошибку. Хорошо, что Flash во многих случаях весьма точно дает знать, что ему не нравится в вашем коде. Когда вы вводите код в обычном режиме панели Actions, Flash сам следит за правильностью написания кода. Если вы сделаете что-то не так, он подсветит некорректный фрагмент кода красным. Вам будет нужно исправить его, пользуясь соответствующим элементом управления.
Чтобы запустить проигрывание фильма в отладочном режиме, выберите пункт Debug Movie меню Control или нажмите комбинацию клавиш <Ctrl>+<Shift>+<Enter>. После этого фильм будет экспортирован и открыт в отдельном окне Flash, но проигрывание фильма будет приостановлено. Кроме того, на экране появится само окно отладчика. Чтобы запустить проигрывание фильма, щелкните кнопку Continue, расположенную в верхней части этого окна. Окно отладчика очень похоже на панель Actions. И там, и здесь в правой части находится текстовая область, где отображается отлаживаемый сценарий. Сами сценарии выбираются в раскрывающемся списке, находящемся прямо над этой текстовой областью. В левой части окна отладчика, в отличие от панели Actions, находятся сразу три списка, которые мы рассмотрим далее. Разделяет эти две части окна отладчика довольно толстая серая полоса, перемещая ее мышью, можно изменять их относительные размеры. На этой полосе также имеется небольшая кнопка, щелкая которую, можно убирать последовательно то одну, то другую часть окна отладчика. Вместо щелчков по кнопке вы можете делать двойные щелчки по самой этой серой линии.
Чтобы удаленная отладка стала возможной, вам следует поместить на Web-сервер вместе с файлом Shockwave/Flash, содержащим фильм, еще один особый файл, содержащий отладочную информацию. Этот файл имеет расширение swd, такое же имя, как у файла фильма, и формируется Flash при экспорте. Если же Flash не найдет на сервере SWD-файл, отладчик не будет работать правильно; в частности, вы не сможете ставить точки останова и трассировать код. Сейчас мы рассмотрим, как создать такой файл и как запустить удаленную отладку. Сначала нужно экспортировать фильм, задав параметры, разрешающие удаленную отладку. Для этого, прежде всего, откройте нужный документ. В диалоговом окне Publish Settings (см. рис. 19.1), на вкладке Flash включите флажок Debugging Permitted. Как только вы включите этот флажок, станет доступно поле ввода Password, где вы сможете ввести пароль. После этого любой, кто захочет отлаживать ваш фильм, должен будет ввести этот пароль. Используйте его, чтобы не давать просматривать ваши сценарии случайным людям. После этого опубликуйте или экспортируйте фильм. Выложите на сервер сформированные файлы swf и swd. Все, подготовка к удаленной отладке завершена. Прежде всего, вам нужно включить удаленную отладку в самом Flash. Для этого запустите Flash, откройте любой документ (можно, в принципе, оставить пустой, созданный при запуске) и запустите его отладку. Когда на экране появится окно отладчика, проверьте, включен ли пункт-выключатель Enable Remote Debugging дополнительного меню. Если он отключен, включите его. Но очень многое осталось "за кадром". Мы не говорили о расширениях Flash - дополнительных модулях, подключаемых к основной среде и выполняющих какие-либо специальные задачи. Мы не упоминали о тонкостях работы Flash на компьютерах Apple Macintosh. Мы не описывали многие частные проблемы, с которыми вы вполне можете столкнуться при работе с Flash, так как они появляются достаточно редко, но все-таки появляются. Мы не рассматривали дополнительные программы, поддерживающие формат Shockwave/Masn, в том числе и выпущенные самой фирмой Macromedia. Мы, в конце концов, не говорили о создании серверных приложений и тонкостях языка HTML. Мы о многом не говорили. Ибо невозможно объять необъятное. Macromedia Flash MX - мощный программный продукт, который еще не раз преподнесет сюрпризы пользователям. Чтобы овладеть им в полной мере, вам также могут понадобиться дополнительные знания по компьютерным сетям, Интернету, серверному программированию, языку HTML и прочим Web-технологиям.
Надіслано учителем інформатики Міжнародного ліцею "Гранд" Чебаном Л.І.
|
Авторські права | Privacy Policy |FAQ | Партнери | Контакти | Кейс-уроки
© Автор системы образования 7W и Гипермаркета Знаний - Владимир Спиваковский
При использовании материалов ресурса
ссылка на edufuture.biz обязательна (для интернет ресурсов -
гиперссылка).
edufuture.biz 2008-© Все права защищены.
Сайт edufuture.biz является порталом, в котором не предусмотрены темы политики, наркомании, алкоголизма, курения и других "взрослых" тем.
Ждем Ваши замечания и предложения на email:
По вопросам рекламы и спонсорства пишите на email: