Создав программный язык описания страниц PostScript и дав тем самым зеленый свет технологиям, которые можно определить как Desktop Publishing, Adobe стала почти единоличным законодателем мод в этой области. Но, несмотря на громадные заслуги в продвижении данной концепции, здесь компании уготована лишь почетная роль второго плана — ведь авторство самой идеи принадлежит все-таки не ей.
Чтобы вновь не оказаться в подобной ситуации во время очередной информационной революции, маркетологи компании первыми начали наступление и распространили серию пресс-релизов, повествующих о том, что дальнейшие продукты Adobe будут разрабатываться в соответствии с новой концепцией, получившей название Network Publishing (сетевое издательство). Основной ее постулат гласит: однажды созданный документ должен сохранять свой вид вне зависимости от среды отображения — будь то принтер, Web-броузер, экран PDA или мобильного телефона. Платформа определяет лишь способ представления документа — в одном случае визуализация будет происходить на клиентской части, в другом — растеризацией займется сервер.
Для успешного продвижения любой технологии подобного плана самым важным является универсальный и удобный формат обмена графическими данными. Для Desktop Publishing таким фундаментом стал PostScript, в сетевом же издательстве его роль призван сыграть новый стандарт SVG (Scalable Vector Graphic), активно продвигаемый компанией. Разработки Adobe всегда радуют четким соответствием реализации продукта и целей, для которых он предназначен. Так же как синтаксис PostScript идеально подходит для интерпретации на RISC-процессорах печатных устройств, язык SVG, основанный на спецификациях XML, как нельзя лучше интегрируется с Web-средой — главным местом его использования.
И хотя о каких-либо серьезных событиях в стане Network Publishing говорить пока еще рановато, новый векторный формат уже приобрел множество поклонников, и число их растет с каждым днем. Так же стремительно увеличивается и количество ПО для работы с этим форматом (причем большинство имеет весьма именитых производителей). Одним словом, пришла пора пристальнее взглянуть на файлы с расширением .svg.
Ну и конечно, описывая возможности этого стандарта де-юре (он официально признан W3C-консорциумом), невозможно не сравнить его с другой популярной технологией, ставшей стандартом де-факто, — Macromedia Flash.
Сразу же следует отметить, что функции SVG практически полностью перекрывают те, что предоставляет пользователям Flash — то есть у Flash нет ничего такого, чего нельзя было бы реализовать с помощью SVG. Мощные средства построения контуров, описанных кривыми Безье (у SVG они лучше), гибкая система управлением цветом с поддержкой градиентов и образцов заливок, альфа-прозрачность и группирование объектов позволяют описывать комплексные векторные изображения. Набор мультимедийных функций, основанный на известных спецификациях W3C SMIL (Synchronized Multimedia Integration Language) и SYMM (Synсhronized MultiMedia), дает возможность включать в сцены звуковые файлы, поддерживать несколько систем анимации (параметрическую и программируемую) и достигать с их помощью весьма сложных эффектов — например, точной синхронизации аудио- и видеоряда.
Традиционно на высоте средства работы с текстом. Полный набор типографских настроек и функции встраивания шрифтов выводят SVG на один уровень с популярным форматом для верстки электронных книг Adobe PDF, поскольку позволяют создавать документы аналогичного качества. Правда, о полной взаимозаменяемости речь пока не идет, поскольку SVG не предоставляет функций для защиты содержимого, крайне необходимых в подобных случаях.
Так же как и Flash, формат SVG имеет в арсенале работу с репозиториями — сложные контуры или наборы объектов описываются один раз, а затем на них лишь создаются ссылки. Такие библиотеки могут сохраняться как внутри основного файла, так и во внешнем модуле.
Некоторые же функции вообще являются уникальными. Например, фильтры — специальные модификаторы, позволяющие создавать эффекты, присущие в основном растровым изображениям. Среди них: размытие, выдавливание, сложные системы трансформации и много других. В тексте кода они описываются одним тегом — забота об их визуализации ложится на средство просмотра. Это позволяет сильно сократить размер исходного файла без потери внешнего вида.
Единственным недостатком SVG в сравнении с Flash на данный момент является отсутствие интегрированного пакета, такого, например, как Macromedia Flash MX, для работы исключительно с этим форматом и полного использования всех возможностей. С другой стороны, работа с бинарным форматом Flash без использования подобного ПО просто невозможна, а код SVG представляет собой простой ASCII-файл и, следовательно, может быть создан с помощью любого текстового редактора.
Кстати, именно благодаря своему XML-подобию SVG гораздо лучше интегрируется с HTML-страницей, в которую он встроен. Этот формат поддерживает стандартизированную W3C объектную модель документа (DOM), и любой объект, описанный в файле SVG, а также его параметры будут доступны скриптовым функциям, введенным в код HTML-страницы. То же самое справедливо и в обратном направлении — любой код, внедренный в SVG, свободно может управлять HTML-элементами страницы. Достижение же подобных результатов в случае с технологией от Macromedia требует весьма хитроумного программирования.
Еще один из аспектов тесной интеграции с HTML — использование для форматирования и декорирования SVG элементов таблиц стилей CSS 2.0, а также их расширений. Это позволяет приводить к единообразию (например, изменять цветовую схему) HTML-страницу и встроенные в нее SVG-файлы.
Открытый формат, основанный на XML, дает возможность задействовать для его обработки огромное количество уже созданных программных средств. Среди них одно из первых мест занимают таблицы трансформации (XSLT), с помощью которых конвертирование одного XML-файла в другой происходит автоматически. Реальным примером является XSLT, разработанная для визуализации посредством SVG молекул химических элементов, описанных на языке CML (Chemical Markup Language).
Для создания интерактивных элементов в SVG предусмотрена поддержка скриптового языка на основе спецификации ECMAScript. Естественно, в полном объеме присутствует и событийная модель, описанная этим стандартом. Отслеживается загрузка страницы, изменение ее параметров, события мыши, клавиатуры и многое другое.
Инструменты
Конечно же, самую широкую поддержку новый формат получил пока лишь в последних продуктах Adobe. Компанией создан наилучший в данный момент броузерный plug-in для просмотра SVG — Adobe SVG Viewer (www.adobe.com/svg/viewer/install/main.html). Есть в арсенале и средства редактирования. Так, например, Illustrator 10 позволяет производить полноценный импорт/экспорт SVG. При этом, кроме графической векторной части, пакет обладает возможностью создания несложных интерактивных элементов (например, rollovers) посредством назначения фрагментов кода на различные события мыши, управления SVG-фильтрами, комбинирования растровых и векторных элементов. К сожалению, никак не представлены в программе анимационные функции формата.
Также неплохим инструментом для работы с SVG является HTML-редактор от Adobe — GoLive 6.0, позволяющий непосредственно просматривать файлы этого формата и осуществлять их несложное редактирование. Сервер динамической генерации изображений Adobe AlterCast может изменять содержимое SVG-файла в соответствии с внешними данными.
Недавно о создании модуля импорта/экспорта SVG для своих продуктов объявила и компания Corel. Собственные версии утилит для просмотра SVG представили IBM и Sun. Существуют бесплатные утилиты для конвертирования в SVG популярных графических форматов, таких как WMF, PostScript, Flash, ArcView Gis и многих других. Более подробную информацию о ПО для работы с этим прогрессивным форматом можно получить по адресу www.adobe.com/svg/tools/3party.html. Немало его и на сервере download.com, причем количество таких пакетов растет с каждым днем, а это говорит о том, что число потенциальных сетевых издателей также увеличивается.
Лучше один раз увидеть
|