
Чем иллюстрируются сайты.
Графика — существенный элемент любого сайта, хотя бы в декоративном смысле, а в ряде случаев и жизненно необходимый. Например, если содержание сайта — геологические данные. Ведь геология принадлежит именно к тем наукам, где ничего нельзя доказать и очень важно убедить. А убедить с помощью карт, фотографий и зарисовок обнажений гораздо проще, чем с помощью слов и фраз. В этом случае графика оказывается необходимым элементом не дизайна, а содержания, то есть контента. Впрочем, это касается не только геологии...
Представлению графики в Сети посвящена обширная литература, как в печатной, так и в электронной форме. Однако там, как правило, рассматриваются вопросы использования изображений в качестве элемента дизайна. Мы же поговорим о "Представлении графического контента на примере хотя бы той же геологии.
В качестве тестовых изображений, позволяющих проанализировать особенности различных графических форматов, я использовал четыре карты в формате TIFF, иллюстрирующие примеры различных видов графики: цветная геологическая схема, построенная традиционными методами, и три изображения, созданные на основе цифровых карт в формате DEM (digital elevation modelling) — цветная image map (аналог обычной географической карты), shadow map в градациях серого цвета и полностью цветная surface map — трехмерная блок-диаграмма.
Исходные TIFF-файлы (табл. 1) имеют размер 600 пикселов по горизонтали и экранное разрешение 85 dpi. Компрессия не использовалась.
Традиционная растровая графика
Подавляющее большинство графики в Сети представлено в растровой форме. Мало-мальски приемлемый стандарт на сетевую векторную графику, за исключением Macromedia Flash, не сложился, поэтому векторные рисунки (такие, как карты и диаграммы) обычно приходится трансформировать в растровый вид.
Физическая скорость соединения накладывает ограничения на объем графического материала в Сети. Поэтому основными графическими форматами, широко распространенными в Интернете, стали GIF и JPEG, то есть стандарты, использующие сжатие с потерей качества и распознаваемые любыми броузерами, поддерживающими графику.
Кроме них есть еще формат PNG, реализующий сжатие без потери качества. До недавнего времени он не имел широкого распространения и не поддерживался старыми версиями броузеров. Однако ныне положение, возможно, изменится. Причина в том, что фирма UniSys — обладатель прав на алгоритм сжатия LZW, используемый в формате GIF, вознамерилась брать деньги (и немалые, даже по американским меркам) с сайтов, на которых будут обнаружены GIF-изображения. На это американское сетевое сообщество ответило призывом к поголовному переходу на формат PNG. Поэтому есть вероятность, что последний скоро станет столь же обычным для Интернета, как и формат GIF.
Итак, что же представляют собой сетевые графические форматы и для чего они служат? Начнем в GIF, поскольку исторически он появился в Интернете первым. Данный стандарт основан на индексации цветовой палитры и сведении ее к 256 цветам. Это максимум, можно и меньше; универсальная палитра, более или менее адекватно передаваемая на различных платформах, включает 216 цветов. Формат этот постоянно модифицируется, последняя его вариация носит название GIF89a. Опциональными особенностями GIF являются transparency (то есть прозрачность фона изображения) и interlaced (чересстрочная прорисовка картинки при загрузке, создающая иллюзию процесса). Кроме того, существует так называемый анимированный GIF, но на нем в этой главе я останавливаться не буду.
Для чего предназначен GIF? Поскольку он оперирует неким фиксированным набором цветов, применение его оптимально для передачи того, что называют обычно бизнес-графикой. В геологической практике это геологические карты, разрезы, диаграммы и т. д. Таким образом, во-первых, достигается наибольшая степень сжатия (см. табл. 1), во-вторых, представление материала в html-документе наиболее соответствует печатному (или рисованному) оригиналу. Передача изображений, содержащих большое количество цветовых переходов (каковыми являются, например, фотографии или спектрозональные аэро- и космические снимки, в нашем примере — image map), неизбежно огрубляется. Также не идеален GIF для отображения черно-белых фотографий, особенно содержащих рисованные объекты и надписи, поскольку в этом случае вместо 256 цветов мы получаем 256 градаций серого. Изображение либо огрубляется, либо итоговый файл практически не поддается сжатию. Не вполне эффективен GIF и при передаче трехмерных изображений (surface map).
Таблица 1. Примеры файлов основных сетевых форматов, размер — в байтах
Формат |
Геологическая схема |
Image Map |
Shadow Map |
Surface Map |
TIFF |
799 604 |
726 366 |
727 692 |
720 492 |
GIF |
12 753 |
101 760 |
81615 |
11487 |
PNG |
13 773 |
230 521 |
73 943 |
14 980 |
JPEG |
57 388 |
37 545 |
121 693 |
60 265 |
DjVu Photo |
34 512 |
12 596 |
86 924 |
38 235 |
DjVu, 100 dpi |
54 861 |
60 827 |
72 974 |
54129 |
DjVu, 200 dpi |
31 390 |
30 533 |
40 393 |
28 673 |
DjVu, 300 dpi |
11 896 |
10 378 |
16 158 |
11441 |
JPEG, в отличие от GIF, изначально был создан для сжатия изображений с большим количеством цветов. Он передает до 16 миллионов различных оттенков (данная палитра носит название true color — «истинный цвет»). Сокращение размера графического файла достигается путем слияния близких оттенков в один. Естественно, это приводит к потере качества изображения, но для экранного представления (не для полиграфического воспроизведения) его вполне достаточно. Контроль за сжатием осуществляется визуально, путем подбора оптимального соотношения размера файла и качества изображения. Соответственно, этот формат вполне пригоден для передачи цветных фотографий. Однако при преобразовании в JPEG геологических карт или тех же полутоновых рисунков (независимо от степени сжатия) можно видеть размывание линий (геологических границ) и надписей, вплоть до полной их нечитаемости. Это делает JPEG непригодным для представления в Сети большинства видов геологической графики. Правда, псевдотрехмерная блок-диаграмма в виде оптимизированного по качеству JPEG-файла выглядит вполне пристойно, однако имеет изрядный размер. При оптимизации по размеру качество резко падает (см. табл. 1).
Формат PNG может применяться как для штриховой, так и для полноцветной графики. Качество изображения получается достаточно высоким, тем не менее в обоих случаях размер файла значительно больше, чем при использовании GIF или JPEG (см. табл. 1).
С помощью каких инструментов можно работать с традиционной растровой графикой? Для платформы Windows существует большое количество графических редакторов, от простенького Paint, входящего в комплект поставки системы, до мощного высокопрофессионального PhotoShop или чуть более слабых Picture Publisher или Corel PhotoPaint. Обо всех этих программах написано достаточно, и подробно останавливаться на них я не буду.
К тому же для наших целей подобные редакторы представляются избыточными, поскольку графика, о которой идет речь, готовится либо в редакторах векторных, либо в специализированных картографических программах. И те, и другие позволяют экспортировать данные практически во все распространенные растровые форматы, в том числе — в GIF, JPEG, некоторые — и в PNG.
Разумеется, как качество, так и степень оптимизации файла GIF или JPEG, экспортированного, например, из CorelDraw, оставляют желать лучшего. Поэтому предпочтительно сохранить результаты картографической, скажем, деятельности в растровом формате без сжатия (например, в формате TIFF), а затем прибегнуть к специализированному оптимизатору веб-графики.
Подобных утилит существует довольно много, и большинство из них доступно в виде freeware или shareware. Наилучшая из них, на мой взгляд, это
Web Graphics Optimizer
Текущая версия данного оптимизатора — 4, ее можно скачать для 30-дневного пробного использования.
Это очень легкая в обращении программа. Она позволяет открыть файл с изображением в любом из распространенных растровых форматов (в том числе и компрессированных) или снять копию экрана (screenshot). Программа допускает выполнение многих простых, но часто необходимых манипуляций, как-то: изменение размера, вращение, зеркальное отражение, геометрическое искажение картинки. Возможна коррекция яркости, контрастности и цветового баланса, инвертирование цветов. Есть функция вставки текста, и том числе трехмерного, и даже ряд фильтров, таких, как размытие, резкость, мозаичность, смягчение, имитация масляной краски и прочие (рис. 6), то есть практически все, что может потребоваться для правки изображения.
Выполнив такого рода подготовительные процедуры, можно заняться собственно компрессией, используя алгоритмы как GIF, так и JPEG. Результаты сжатия, наряду с исходным изображением, можно видеть в пяти окнах одновременно (если, конечно, позволяет размер рисунка и экрана монитора; впрочем, экранное представление масштабируется в сторону как уменьшения, так и увеличения). Каждое из окон по умолчанию соответствует GIF- или JPEG-файлу с некоторыми настраиваемыми параметрами — глубиной цвета в первом случае и степенью сжатия во втором. Это открывает возможность не только оценить результат компрессии, но и визуально решить, какой из алгоритмов сжатия больше подходит для данного изображения. В каждом окне выводится не только размер результирующего файла, но и время его загрузки при определенной скорости модемного соединения (по умолчанию — 28,8 кбит/с). Выбранный вариант может быть сохранен (командой Save as...) в соответствующем формате, то есть GIF или JPEG, но, к сожалению, не в формате PNG, что является чуть ли не единственным (кроме цены и неясности способа легального приобретения) недостатком программы.
Графический инструментарий для не-Windows платформ более беден. Однако и здесь имеется прекрасный растровый графический редактор —
GIMP
Исходно он был предназначен для Linux, но работает и под другими бесплатными клонами UNIX, а также портирован и под OS/2. К тому же эта программа бесплатна и входит в стандартную поставку большинства современных дистрибутивов Linux, а потому заслуживает более подробного рассмотрения.
В версии для Linux GIMP — развитый растровый редактор, может быть, и не дотягивающий по спектру своих возможностей до PhotoShop, но функционально не уступающий, по крайней мере, Picture Publisher или Corel Photo-Paint. Весьма удобен в обращении, все манипуляции можно выполнять щелчком правой клавиши мыши. Понимает все основные растровые форматы, в том числе и файлы PhotoShop (*.psd).
При
запуске GIMP
на экране появляется инструментальная
палетка с изменяемым размером, в верхней
части которой расположено меню команд
(рис. 7). Оно включает только два пункта
— File
и Xtns.
Первый содержит ограниченный набор
базовых операций: открытие и создание
файла, выход из программы, установки
(в том числе — настройка инструментов,
таких как кисти, цветовые палитры и т.
д.). В пункте Xtns
— сканирование, снятие экранных копий,
броузеры по веб-ресурсам и базе данных
скриптов, а также сами скрипты. Все
прочие манипуляции совершаются после
открытия или создания файла щелчком
правой клавиши мыши на с
оответствующем
изображении.
Итак, загрузим наш исходный TIFF-файл. Что можно с ним сделать средствами GIMP? Чтобы узнать это, прибегнем к помощи правой клавиши мыши. На экране отобразится всплывающее меню с пунктами — file, edit, select, view, image, ayers, tools, filters, script-fu, dialogs.
Назначение первого — манипуляции с файлами, а также общепрограммные настройки и печать. Следует отметить, что GIMP не имеет собственного формата файла, зато позволяет напрямую открывать практически любой растровый формат. И по умолчанию (командой Save) сохраняет активное изображение в формате ранее открытого файла. Функция же экспорта осуществляется командой Save as. Список экспортируемых форматов также очень широк. Примечательно, что в нем учитывается характер изображения: скажем, файл в индексированных цветах (например GIF) нельзя напрямую сохранить в полноцветном виде (как TIFF или JPEG), наоборот, для сохранения TIFF-файла в формате GIF необходимо предварительно выполнить индексацию. Сначала это кажется непривычным, но, по сути, такая процедура логичнее, чем та, которая реализована в PhotoShop, поскольку она требует меньше промежуточных манипуляций.
Пункт edit в основном аналогичен таковому в стандартных Windows-приложениях: он позволяет выполнять вырезание, копирование и вставку, undo и redo (число их уровней устанавливается в пункте prefeneces, по умолчанию — 5). Смысл остальных подпунктов понятен из их названий: fill — заполнение фоновым цветом, stroke — создание ограниченной области и т. д.
Пункты select и view также не вызывают затруднений. В первом можно сделать всякого рода выделения (в том числе цветовых областей) и записать их в виде отдельного графического канала, во втором — зуммирование, скрытие/показ линеек, направляющих и привязка к ним.
Следующие манипуляции с рисунком предусмотрены в пункте Image. Здесь изображение можно преобразовать в RGB, индексированные цвета или градации серого, трансформировать, вращать, обрезать и т. д. Здесь же — работа с альфа-каналами и цветовыми палитрами. Интересны подпункты resize и scale. Первый обрезает рисунок до заданного размера, тогда как собственно изменение его размера (то, что в PhotoShop называется resize) осуществляется посредством scale, то есть масштабированием. Это, хотя и непривычно, но содержит в себе больше логики.
С пунктом layers все ясно — это действия со слоями. А вот в пункте tools — масса всяких подпунктов. Здесь и выделение областей различной формы (многоугольников, полигонов, произвольных фигур и т. д.), и перемещение, и обрезание, и зеркалирование и вращение (что частично совпадает с некоторыми подпунктами из пункта Image). Сюда же, в соответствии с названием, помещены инструменты типа кистей, ластика, пульверизатора. В этом же меню содержатся средства работы с текстом. Следует заметить, что многие эти действия доступны и из инструментальной палетки, которая является плавающей и совершенно не зависит от окна с изображением.
Следующий пункт — filters — аналог соответствующего пункта в PhotoShop. И подпункты его примерно совпадают со штатным набором последнего. Примечательно, что многие из имеющихся в меню фильтров неактивны; можно предположить, что они существуют в природе, но не входят в стандартную поставку или не устанавливаются по умолчанию.
Самое интересное в GIMP — пункт script-fu, не имеющий, насколько я знаю, аналогов в других растровых редакторах.
Он представляет собой набор скриптов для создания всякого рода спецэффектов. В целом это близко к назначению фильтров, но функционально отличается возможностью самостоятельного написания скриптов пользователями программы при условии, разумеется, знания соответствующих языков программирования (Tel, Scheme и Perl). To есть мы имеем дело с неким набором интерпретируемых команд, посредством которых можно создавать те или иные уникальные графические эффекты в личных и не только личных целях.
Следует отметить, что большинство подпунктов меню скриптов неактивны (по аналогии с фильтрами предполагаю, что их надо устанавливать отдельно). Однако несколько любопытных эффектов мне все же удалось реализовать. В отличие от применения фильтров, действие скриптов отменить командой undo нельзя.
Последний пункт, dialogs, почти аналогичен таковому из меню files и содержит всевозможные инструментальные настройки, редакторы градиентных заливок и индексированных палитр, слоев и каналов.
Вот вкратце обзор основных возможностей GIMP. Что же из того изобилия мы можем приспособить для наших целей?
Поскольку предполагается, что исходный TIFF-файл при изготовлении был доведен до кондиции, с точки зрения качества, единственное, что сейчас требуется от GIMP, — это трансформировать его в GIF, JPEG или PNG с минимальными потерями и максимальной степенью сжатия.
Для трансформации в GIF сначала проведем индексацию (подпункт Indexed в пункте Image). Здесь перво-наперво нам предлагается выбор палитры: полной 256-цветной, вебовской 216цветной, заказной (которую можно выбрать из готовых и потом отредактировать) или однобитной черно-белой. Здесь же включается или отключается режим dithering.
Получив рисунок в индексированных цветах, просто сохраняем его при помощи опции Save as как GIF. Для этого вводим новое имя (имя исходного TIFF не наследуется), выбираем определение типа (Determine file type — GIF, расширение при этом присваивается автоматически), и жмем на ОК. Нас спрашивают, желаем ли мы получить чересстрочный GIF (по умолчанию — выключено) и не требуется ли комментарий (по умолчанию — Made with GIMP, но можно ввести свой; однако поскольку наша цель, кроме прочего, еще и сжатие итогового файла, последнее явно лишнее). Интересно, что я нигде не обнаружил опции, активизирующей прозрачность GIF. Отношу это к недостаткам программы.
Трансформация в JPEG или PNG — и того проще. Просто нажимаем Save as, набираем имя файла и выбираем его тип. В случае экспорта в JPEG последует вопрос о степени компрессии, в случае PNG нас спросят еще, не хотим ли мы чересстрочной развертки. Все. Процедура закончена.
Насколько успешно? Это можно видеть из табл. 2, где те же четыре исходных TIFF-файла сжаты во все три сетевых формата различными программами.
Таблица 2. Степень компрессии сетевой графики различными программами
Формат |
Геологическая схема |
Image Map |
Shadow Map |
Surface Map |
GIF |
|
|
|
|
Экспортированный |
12 753 |
101 760 |
81 615 |
11 487 |
Web Graphics Optimizer |
12 023
|
7 698 |
57 730 |
11 135 |
GIMP |
61 929 |
58 261 |
42 325 |
12 250 |
Compupic |
52 345 |
68 726 |
54 670 |
212 310 |
JPEG |
|
|
|
|
Экспортированный |
57 388 |
37 545 |
121 693 |
60 265 |
Web Graphics Optimizer |
24 333 |
13 518 |
41220 |
19 181 |
GIMP |
20 141 |
15 655 |
65 371 |
27 620 |
Compupic |
30 816 |
21 620 |
71381 |
34179 |
PNG |
|
|
|
|
Экспортированный |
13 773 |
230 521 |
73 943 |
14 980 |
Web Graphics Optimizer |
- |
- |
- |
- |
GIMP |
15 000 |
210 958 |
155 800 |
16 636 |
Compupic |
14 690 |
211 601 |
120 711 |
16 602 |
Так как же все-таки GIMP справился с нашими основными задачами — сохранением качества и компрессией? В отношении разных форматов — по-разному.
В случае сохранения изображения в формате GIF с первой задачей — вполне нормально, мои рисунки и в 256-, и в 216-цветной палитрах получились вполне пристойными, причем практически неотличимыми друг от друга, что случается далеко не всегда.
С компрессией — неоднозначно. В 256-цветной палитре рисунок иногда достигает совершенно фантастических размеров (в несколько раз больше, чем при экспорте из PhotoShop при аналогичных установках сохранения). Правда, стоит перейти к веб-палитре, и он волшебным образом уменьшается. Тем не менее объем готового файла все равно получается значительно выше, чем при использовании специализированных GIF-оптимизаторов для Windows.
В отношении формата JPEG результат вполне ожидаемый: весьма посредственное качество при большем размере файла, чем, например, у Web Graphics Optimizer, который, впрочем, отменным качеством оптимизированных изображений также похвастаться не может. Это лишний раз подчеркивает непригодность этого формата для наших задач, хотя в других случаях (скажем, для представления фотографий) данный стандарт безусловно является оптимальным.
Подведем предварительный итог: GIMP в современном е виде (и без факультативных средств в виде фильтров и скриптов) вполне пригоден для выполнения большинства задач представления растровой графики в Интернете. К достоинствам его следует отнести предельную логичность организации и простоту использования. И как следствие простоту освоения, особенно для человека, не знакомого со сложными графическими редакторами, такими, как PhotoShop. Среди недостатков этого редактора следует отметить изрядную медлительность, особенно при трансформациях или применении большинства ресурсоемких фильтров вроде размытия. Лично меня больше всего раздражала необходимость отключения вставки комментария при каждой записи (и перезаписи!) GIF-файла. Может быть, авторы когда-нибудь сделают ее по умолчанию выключенной? Все же GIF — формат, ориентированный в значительной степени на использование в Сети, а там каждый лишний байт -лишний...
Однако даже с использованием операционной системы Linux в ряде случаев полезно применить такую программу, как
Compupic фирмы Photodex
Это — бесплатный для некоммерческого использования продукт, доступный в виде rpm-пакета размером 1,8 Мбайт на сайте компании-разработчика http://www.compupic.com. Версия под Linux портирована с платформы Windows, что обусловливает многие ее особенности.
По своему предназначению Compupic — менеджер графических файлов типа Ulead ImPal или PhotoImpact для Windows. После не вызывающей проблем распаковки и запуска появляется окно следующего вида: в левой стороне вверху — дерево каталогов (папки, содержащие графические файлы, выделены цветом), в правой — содержимое выбранного каталога в виде иконок; те из них, которые соответствуют известным программе графическим файлам (среди них — BMP, TIFF, GIF, JPEG, PNG, PSD и другие), представляют собой миниатюризованные изображения указанных файлов. В левом нижнем углу — превью выбранного изображения. Щелчок по нему или непосредственно по иконке вызывает файл для редактирования (рис. 8).
Этот интерфейс установлен в программе по умолчанию, но он вполне поддается пользовательской настройке. Дерево каталогов может быть протянуто на любую глубину или, наоборот, свернуто. Заголовки папок могут быть выделены полужирным начертанием. Список файлов может быть представлен в виде иконок трех вариантов либо в форме текстового списка (полного или сокращенного). К сожалению, мне не удалось настроить ни начертание, ни размер базового шрифта, а имеющийся уж больно мелок.
Кроме того, существует возможность просмотра графики и в виде полноэкранного слайд-шоу, автоматического или в произвольном порядке, и множество других полезных функция.
В общем, Compupic — простая и удобная база данных графических изображений, функционально сходная с Ulead ImPai. В отличие от последнего, программа не позволяет подключить внешний графический редактор, однако имеются собственные функции редактирования изображения, ограниченные, но в большинстве случаев вполне достаточные.
Как уже говорилось, щелчок левой клавишей мыши (двойной, что необычно для XWindow) по соответствующей иконке открывает окно редактирования изображения. А здесь по щелчку уже правой клавишей доступны (помимо стандартных операций с файлами: вырезания, вставки, масштабирования, вызова помощи и т.д.) многочисленные манипуляции непосредственно над рисунком (пункт меню Image).
Среди них:
• корректировка яркости, контрастности, цветовой палитры, резкости и тому подобное, вплоть до текстуризаци
• вращение: по и против часовой стрелки на угол в 90°, a также на произвольный угол, обращение по горизонтали или вертикали;
• изменение размера изображения — произвольное или в соответствии с экранными разрешениями;
• конвертирование в различные цветовые режимы, инвертирование, размещение текста; к сожалению, только латиницей — ни с одной из русских клавиатурных раскладок у меня ничего не получилось;
• обрезание рисунка.
Результаты этих манипуляций могут быть сохранены в различных форматах, среди которых — BMP, PCX, TIFF, GIF, GPEG, PNG и даже PSD. Следует заметить, что при закрытии рисунка предложения сохранить изменения не последует — об этом следует помнить самому.
Качество изображения, получаемого при всех опробованных мной экспортных фильтрах, вполне приличное. А о размере получившихся файлов можно судить по табл. 2.
Bсe распространенные сетевые растровые форматы — и GIF, И JPEG, и PNG — имеют один общий недостаток: они не масштабируются. А при анализе геологической графики очень существенно иметь возможность видеть один и тот же объект в различных масштабах, от предельно генерализованного для выявления региональных структур до максимально детального для определения локальных особенностей.
Восполнение этого и ряда других недостатков возможно, но для этого нужны
Нетрадиционные графические форматы
.Один из таких форматов, с которого я и начну, именуется
DjVu
Данный стандарт относительно недавно был разработан Я небезызвестной фирме AT&T (http://www.djvu.att). Изначально его создавали для размещения в сети Интернет сканированных изображений, совмещенных с текстом. Оптимизация такой графики основана на том, что фоновое изображение (например фотография) как бы отделяется от текста и сжимается по алгоритму, сходному с JPEG, a компрессия текста осуществляется отдельно, вероятно, путем индексирования аналогично GIF.
Ьолее чем за год своего существования DjVu развился в несьма значительной степени и ныне вполне пригоден для представления графических изображений во Всемирной Сети. Хотя широкого распространения он, тем не менее, не получил, на мой взгляд — незаслуженно.
Прочитав об этом формате на сайте разработчиков, я подумал: это именно то, что нужно для геологической графики и незамедлительно приступил к экспериментам, предварительно скачав plug-in для броузера, позволяющий без проблем просматривать картинки в этом стандарте, и соответствующий инструментарий, именуемый DjVuer — Windows-программу для преобразования большинства растровых файлов в формат DjVu. Программа эта бесплатная, хотя существует и коммерческий вариант за 195 долларов. В чем заключатся отличие, я так и не понял.
Сегодня инструментарий для работы с DjVu-файлами появился уже для всех существующих платформ — Windows, Sun, SGI и, наконец, для Linux (в вариантах Iibc5 и Iibc6). Интересно, что все версии данных программ бесплатны, за исключением sdk для Windows производства компании AT&T. Однако давайте сначала остановимся на конвертер растровой графики в формат DjVu, выпущенным фирмой Feith. Как я уже упоминал, эта программа называется DjVue
Ее текущая версия 1.6 доступна на сайте http://www.feit com/. Программа представляет собой самораспаковывающийся ехе-файл объемом чуть больше 2,2 Мбайт. После инсталляции и запуска DjVu (рис. 9) на экране появляется предложение открыть файл для преобразования. DjVuer поддерживает форматы TIFF, JPEG, BMP, IW44 и РNМ. Изображение можно превратить в негатив, трансформировать в градации серого (правда, после этого оно становится почему-то в несколько раз больше), вращать, зеркально отразить или перевернуть по горизонтальной оси и после это сохранить в собственном формате, в формате BMP или РР предварительно установив настройки записываемого файла.
Т
аковых
— две: разрешение исходного изображения
и качество целевого. Поскольку изначальное
предназначение
программы
— сканирование изображений, качество
исходной картинки определяется
разрешением сканирования. Значение
разрешения имеет три градации: высокое
(300 dpi
и выше), среднее (200—300 dpi)
и низкое (100 dpi
и ниже). То, что отсканировано с минимальным
разрешением, подвергается наибольшему
улучшению, иными словами, значение
исходного разрешения обратно
пропорционально качеству получаемого
изображения. Качество целевой картинки
определяется установкой ползунка в
позиции от 20 до 100.
После записи файл можно просмотреть через броузер с помощью соответствующего plug-in. При просмотре по щелчку правой клавишей мыши могут быть выбраны многочисленные опции: цветной или черно-белый режим, масштабирование (zoom) от 25 до 300 % исходного изображения или по ширине окна броузера, подробная информация о файле (количество пикселов, разрешение, степень компрессии). Естественно, изображение может быть распечатано.
Надо сказать, что сам по себе DjVu-файл связывается с html-файлом только посредством тега <а href= "имя_файла.djvu">, можно также указать атрибут target. В этом случае (при наличии plug-in, речь о котором пойдет ниже) он открывается в окне броузера, том же или новом. Ни через <src img>, ни через <object> вставить такое изображение в html-документ нельзя. Разумеется, вследствие этого ему нельзя придать ни титул, ни заголовок, ни какую-либо альтернативную подпись: обо всем этом надо позаботиться при создании исходного рисунка.
Что можно сказать о качестве изображения? Оно различно для различных типов графики. Цветная геологическая карта хорошо смотрится при исходном разрешении (ИР) 100 dpi, вполне пристойно — при ИР 200 dpi, резко ухудшаясь при ИР 300 dpi, хотя только в последнем случае обеспечивается выигрыш в размере по сравнению с GIF.
Полутоновая карта shadow map по данным GTOPO30 DEM с дешифрованными границами и подписями (то есть то, ради чего все и затевалось) при ИР 100 dpi выглядит вполне сопоставимо с GIF чуть большего размера, легко масштабируется до 300 %, сохраняя вполне пристойный вид. При ИР 200 dpi карта неплохо выглядит в размере 100% от исходного (будучи существенно меньше, чем GIF), но при увеличении масштаба границы и надписи становятся расплывчатыми. Карта с ИР 300 dpi выглядит просто плохо.
Аналогичная картина и с третьим типовым изображением — трехмерной блок-диаграммой: хорошее качество при ИР 100 dpi, приемлемое — при 200 dpi и плохое — при 300 dpi. Однако в этом случае достигается максимальный выигрыш в размере по сравнению с GIF.
Весь необходимый инструментарий и средства просмотра DjVu-файлов имеются также и для Linux.
Так, на сайте AT&T ныне доступны: djvu sdk — инструментарий для изготовления DjVu-файлов, djvuedit — средства их редактирования, и npdjvu — plug-in для просмотра в броузерах. Они представляют собой три архива tar.gz (размером, соответственно, 2 Мбайт для sdk, 1,2 Мбайт для edit и 1,1 Мбайт — для plug-in). Первые два при скачивании требуют регистрации, в процессе которой добраться до необходимого архива бывает очень нелегко. А само скачивание происходит медленно и печально, независимо от канала и времени суток (видимо, сервер так работает).
Рассмотрим все перечисленные программы более подробно, и начнем, пожалуй, с sdk. После распаковки архива, которая не вызывает каких-либо затруднений, мы получаем каталог, одноименный файлу, где наряду с серией подкаталогов и прочего содержимого располагается файл README. Этот документ настоятельно рекомендую прочитать, поскольку в нем доходчиво описаны все дальнейшие действия.
А дальнейшие действия подразумевают запуск инсталляционного скрипта (install.sh) в терминальном или текстовом режиме. Непосредственно после запуска пользователю предлагается ознакомиться с лицензионным соглашением. После согласия с его условиями последует вопрос: не расхотелось ли вам устанавливать программу. Если нет — все дальнейшее происходит быстро и просто. Инсталляционная программа предлагает ввести пути до исполняемых файлов, библиотек, man, doc и прочего; и при этом любезно подсказывает пути по умолчанию — достаточно просто нажать Enter. Следует только позаботиться, чтобы соответствующие каталоги были доступны для записи, если программа устанавливается из режима User. Затем с пулеметной скоростью мелькают копируемые файлы, и наступает финал — поздравление с благополучной инсталляцией. Все. Вспомнив, какие директории вы указали в процессе установки, и отыскав соответствующие бинарные файлы, можно начинать работать.
Инсталляция двух других пакетов происходит аналогично: распаковка архива, чтение README, запуск скрипта, знакомство с длинной лицензией, подтверждение путей к рабочим каталогам и собственно установка. Разве что для plug-in предлагается два варианта инсталляции — частный (private) и публичный (public), первый — в режиме User, второй — Root. Однако если вы запустите публичную установку, не имея соответствующих прав доступа, программа автоматически отменит инсталляцию и начнет установку в приватном режиме.
Теперь немного поговорим об использовании этих программ. Пакет DjVu включает в себя два основных компонента – djvuencode и djvuendecode. Первый, как и следует ожидать, предназначен для преобразования растровых файлов (TIFF, BMP, JPEG, GIF и еще нескольких) в формат DjVu. Второй — для обратной процедуры. Поскольку она представляется мне неактуальной, подробно говорить о ней не буду. Компонент djvuencode запускается в терминале или текстовой консоли. Формат команды прост — djvuencode [options] исходный_файл целевой_файл. Опций не очень много, и принципиально важными кажутся две — те, которые отвечают за режим преобразования.
Режимов несколько, но большая их часть предназначена для сканирования фотографий. Заслуживают внимания, как будто бы, два — режим фото (-р или -photo) и режим документа (-d или -dpi). Фоторежим предназначен, как можно понять, для оригинальных, то есть нами созданных изображений, и, согласно документации, обеспечивает оптимальные качество и размер. С этим, как будет видно ниже, следует согласиться.
Режим документа предназначен для сканированных изображений с текстом. Он требует еще разрешения (N). Предлагается всего три значения этого параметра: 100, 200 или 300 dpi.
Повторю, что под разрешением в данном случае (как и в аналогичной программе для Windows) подразумевается то разрешение, с которым сканировался исходный документ, в соответствии с чем и осуществляется его преобразование. То есть чем ниже исходное разрешение, тем в большей степени программа пытается улучшить изображение. В результате при N равном 100 мы имеем максимальный размер файла и наилучшее качество, а при 300 — наоборот, минимальный файл и качество отменной паршивости. Поскольку наше исходное экранное изображение имеет разрешение заведомо не выше 85 dpi, а обычно — гораздо меньше, если не рассматривать случай сканирования, следует, не ломая голову, выбирать фоторежим. Или — не выбирать никакого, поскольку по умолчанию осуществляется сжатие в режиме фото. Размер файла при этом получается в полтора раза меньше, чем в режиме документа (примерно как при 200 dpi 13 программе DjVuer для Windows), а качество — выше (как при 100 dpi). Эти данные приведены в таблице 1.
Что касается качества, то оно не уступает GIF в части передачи надписей или линий, и JPEG с минимальной компрессией — в части передачи полутонов и фотоизображений. То есть, по моему мнению, оно очень близко к идеалу. При сопоставимом размере файла сравнительно с обоими упомянутыми стандартами.
Ну, с процедурой создания DjVu-файлов все более или менее ясно. Что оказалось для меня неожиданным в Linux-версиях данного инструментария — это возможность редактирования (так это назвали авторы) DjVu-изображения, то есть создания на нем активных областей (или image map), как на самом простом GIF или JPEG, и привязки к ним любых гиперссылок, в том числе — с указанием target и альтернативного текста.
Так вот, эти процедуры осуществляются программой djedit из второго пакета, в который входит также djview — автономная программа просмотра DjVu-файлов. При запуске этой утилиты в графическом режиме на экране появляется предложение выбрать исходный файл (рис. 10). Это можно сделать, нажав кнопку Browse или введя имя по памяти с указанием полного пути.
После этого программа отображает собственно рабочее окно с изображением, на котором можно выбрать будущую активную область (в виде прямоугольника, овала или полигона).
А в возникшем затем окошке ввести URL (к сожалению, здесь-то никакого броузинга нет, поэтому ввод осуществляется или на память, или из буфера обмена), альтернативный текст и, при необходимости, target. Все, image map готова. Впрочем, активную область можно отредактировать в любой момент, как изменив ее размер, так и назначив новые гиперссылки (правда, превратить прямоугольник в овал или полигон все-таки нельзя). Подобных активных областей можно наплодить сколько поместится; разумеется, при перекрытии одних участков другими активными окажутся введенные последними.
Однако прежде чем воспользоваться плодами своего труда. требуется установить соответствующий plug-in. В Windows броузерах процедура эта очень проста: запускается самораспаковывающийся архив, находятся имеющиеся броузеры (MS IE и NN 4-х версий, совместимость с более ранними я не проверял) — и все, смотри и радуйся.
Под Linux я провел описанную выше процедуру установки в режиме private, перезагрузил броузер (Netscape Naviga tor 4.6), как указано в инструкции, и получил вместо своей замечательной картинки plain text. Следуя обычной для Windows практике, перезагрузил машину — тот же результат. Повторил установку в режиме public — опять закорючки вместо картинки. Заглянул в настройки броузера, туда, где говорится о MIME-типах: все настройки введены в соответствии с руководством. Попытался подключить вместо plug-in автономный djview в качестве приложения — безрезультатно. Пока опять не щелкнул на галочке включения plug-in. Тут-то и вылезло маленькое окошко с радостным сообщением, что описание MIME неправильно, а правильное — DjVu File. Вслед за этим мне было предложено с такой записью согласиться. Я нажал ОК, и все чудесным образом встало на свои места. В том числе — DjVu-картинки на место plain text.
Вот и все. За исключением того факта, что формат DjVu, естественно, требует серверной поддержки. Как ее включить — описано на том же сайте AT&T (http://djvu.att.com). А поскольку указанный стандарт до сих пор распространен мало, далеко не все серверы его поддерживают. Однако хочется надеяться, что скоро это положение изменится.
Среди положительных особенностей данного стандарта следует отметить, что формат DjVu помимо высокого качества обладает возможностью масштабирования. А это для представления геологической графики — вещь наипервейшая. Причем масштабирование возможно абсолютно любое, от 25 % до 300 %, по ширине окна, по размеру страницы, а также произвольное. Выбирается масштаб либо из всплывающего по щелчку правой клавиши меню, либо из выдвижной панели в нижней части окна броузера.
Из первого меню, кроме того, можно сохранить, экспортировать или распечатать картинку, получить о ней полную информацию, а также выбрать режим дисплея — цветной, черно-белый, переднего плана или фоновый. Правда, смысл последней опции остался для меня непонятным: во всех режимах, кроме цветного, картинка становится абсолютно не похожей на себя саму.
В нижней панели броузера имеется возможность выбора страницы. Значит, изначально предполагалось, что DjVu-картинка может быть многостраничной. Что недавно и было реализовано, по крайней мере, в Linux-версии DjVu-инструментария. А заодно появилась и возможность создания навигационных карт, как для GIF, так и для JPEG.
Подведем итоги. Нет в жизни совершенства, и формат Dj Vu — не панацея на все случаи жизни. Однако в ряде случаев он, безусловно, полезен. При сопоставимом с GIF размере и точности проработки деталей он поддается масштабированию, что очень удобно при помещении в Сети многих видов изображений. Примером является рассмотренная геологическая графика. И потому он заслуживает всяческого внимания со стороны тех, кому по роду деятельности требуется представление карт различного класса, аэро- и космоснимков, в том числе с нанесенными на них результатами дешифрирования. А с появлением поддержки многостраничности и активных областей (навигационных карт) DjVu вполне успешно может конкурировать и с форматом PDF.
Конечно, для целей картографии еще более подходящий формат — чисто векторный, допускающий наличие растровой подложки. Поэтому можно только приветствовать усилия фирмы Macromedia по внедрению первого широко распространенного сетевого векторного формата — Shockwave (*.swf). Инструментом для его создания является программа
Macromedia Flash и Shockwave
Программа эта (текущая версия — 4) доступна на сайте фирмы (http://www.macromedia.com) для 30-дневного пробного использования. К сожалению, существует только реализация для Windows, и никакой информации о портировании на другие платформы нет. Впрочем, недавнее появление plug-in для Linux вселяет определенную надежду на дальнейшее развитие совместимости этого продукта с иными операционными системами. Цена программы при покупке через Интернет — около 300 долларов. В России успешно продавалась версия 2 Macromedia Flash.
Дистрибутив Macromedia Flash — самораспаковывающийся архив объемом около 8,5 Мбайт. Запуск его приводит к инсталляции всего программного комплекса, включающего, помимо собственно Flash, также Aftershock (средства для включения swf-файлов в html), стандартный плеер для воспроизведения swf-файлов и серию дополнительных плееров, в том числе для проигрывания swf-файлов средствами Java.
В первый раз инсталляция проходит без проблем. Однако второй раз установить программу с того же дистрибутива, как правило, не удается. И по окончании 30-дневного срока бесплатного использования всякого рода распространенные средства вроде перевода системных часов не помогают. Гарантированно повторить процедуру инсталляции можно форматированием винчестера и скачиванием нового экземпляра программы. Впрочем, есть и другие решения...
Итак, Flash и все сопутствующие компоненты установлены. Запускаем программу, то есть собственно инструментарий (рис. 11). Основные элементы интерфейса Macromedia Flash включают в себя главное окно, или сцену, панели инструментов, панель рисования (и та, и другая могут быть плавающими или фиксированными), управляющую панель и timeline. Все указанные элементы и определяют возможности программы.
Стандартная панель содержит столь же стандартные для всех Windows-приложений кнопки для создания и открытия файла, его записи, печати и предварительного просмотра, вырезания, копирования в буфер обмена и вставки, undo и redo. Из специфических для этой программы можно перечислить кнопки включения-отключения привязки к сетке, сглаживания и спрямления кривых (smooth и straighen), вращения, масштабирования и выравнивания объектов, ниспадающее меню масштабирования изображения (допускается ввод произвольного значения в процентах).
С помощью drawing panel можно:
• рисовать прямые, ломаные и произвольные линии, а также прямоугольники и эллипсы — инструмент pencil;
• изменять их атрибуты — цвет линий, толщину и характер (сплошная линия, пунктирная, точечная или заказная) — инструмент ink bottle;
• задавать заливку замкнутых областей, в том числе и градиентную — инструмент paint bucket — после чего залитая область и ее контуры представляют собой различные объекты, изменяемые независимо;
• пользоваться кистью для рисования линий переменной толщины — инструмент brush;
• стирать (полностью или частично) нарисованные линии или залитые фигуры — инструмент eraser;
• выделять прямоугольные (инструмент arrow) или произвольные (инструмент lasso) области;
• увеличивать или уменьшать область просмотра изображения — инструмент zoom;
• работать с текстом — варьировать шрифт и его начертание, размер и цвет, а также некоторые атрибуты параграфа — выравнивание, абзацный отступ, межстрочный интервал и т. д.
Все кнопки сопровождаются всплывающими подсказками, впрочем, эту функцию можно и отключить.
Естественно, все манипуляции кнопками дублируются через меню. Более того, только через меню доступен определенный ряд действий. Так, кнопка Paste помещает скопированный или вырезанный объект со смещением относительно первоначального положения. Чтобы поместить его в то же самое место (например, на другом слое, о чем будет написано далее), надо выбрать пункт меню Edit ► Paste in Place.
Вообще, следует сказать, что рисование и редактирование рисунка идеологически весьма отлично от привычного, скажем, по графическому редактору CorelDRAW. Чтобы изменить форму линии (неважно, прямой или кривой), не нужно оперировать узелками: просто хватаете линию в произвольном месте и тянете в нужном направлении. Только не следует выделять линию — в этом случае она просто переместится. Отрезки геометрических фигур (например стороны прямоугольника) некоторым образом выступают как отдельные объекты: одинарный щелчок на стороне прямоугольника приводит к выделению только ее, после чего она может быть перемещена независимо от остальных сторон. А для того чтобы выделить весь прямоугольник как единый объект, нужно дважды щелкнуть в любой его точке.
Разумеется, щелчок правой кнопкой мыши на объекте дает доступ к некоторым его свойствам, набор которых также не вполне обычен (за исключением copy, cut и paste): это вращение и масштабирование (без применения данных процедур выделенный объект масштабированию не поддается), сглаживание и спрямление.
Помимо создания изображений непосредственно во Flash предусмотрены некоторые (на мой взгляд, довольно убогие) возможности импорта готовых изображений. Импортируются Windows Metafile (*.wmf, в том числе — Enhanced, *.emf), из векторных форматов — Adobe Illustrator (*.eps и *.ai) и AutoCAD Exchange (*.dxf), из растровых — JPEG, GIF и PNG. Удивляет отсутствие в первом случае формата «родного» редактора компании Macromedia — FreeHand, во втором — стандартного для растровых редакторов TIFF. Непонятно, почему конкурирующий Illustrator сподобился попасть в список понимаемых форматов, а много более распространенный и столь же конкурирующий PhotoShop — нет.
Наконец, переходим к тому, что собственно и создает своеобразие программы — слоям и кадрам (Layer и Frame).
Концептуально слои примерно сходны с таковыми в CorelDRAW. Каждый слой имеет четыре состояния — текущий (Current), нормальный (Normal), защищенный (Locked) и скрытый (Hidden). Ну, с последними двумя все более или менее ясно: их назначение аналогично состояниям слоев в CorelDRAW. А в отношении первых двух есть определенная тонкость. Выделять, копировать, вставлять и удалять объекты можно на каждом из них. Так что будьте внимательны — если вы дали команду Select All, а затем Delete — уничтожено будет все нескрытое и незащищенное; впрочем, команда undo также доступна; уровней отмены по умолчанию 20, но увеличить их количество можно в меню File ► Preferences вплоть до 200. Можно также модифицировать объекты на нормальном слое (скажем, вращать, масштабировать, изменять атрибуты и прочее). Однако рисование возможно только на текущем слое.
С кадрами все также более или менее понятно. Кадр можно вставить и удалить; пустой кадр вставляется справа от текущего, так что перед первым кадром ничего поместить нельзя. Кроме того, кадр (или группу кадров) можно скопировать и вклеить. Вклеить кадр можно на любой позиции — не обязательно, скажем, после последнего кадра. В этом случае пространство между последним кадром и вклеенным заполняется пустыми кадрами. Следует заметить, что если вы обрабатываете многослойную структуру и вам необходимо точно скопировать ее в другом месте, в точке копирования необходимо выделить все имеющиеся слои, а в точке вклейки — ровно столько слоев, сколько их было в точке копирования, иначе вся структура «поплывет».
Кроме того, во Flash существует понятие сцены (Scene). Оно примерно аналогично понятию страницы в CorelDRAW старших версий (начиная с 5). Однако здесь в каждой сцене может быть свое, произвольное количество слоев и, разумеется, кадров. При проигрывании swf-файла (об этом — дальше) сцены воспроизводятся последовательно, начиная с первой.
Что же можно делать с помощью описанных средств? Да почти все, что угодно. Вернее, все, на что хватит вашего умения. Располагая подходящим инструментом (например, графическим планшетом типа Wacom) и достаточным количеством времени, можно создавать сколь угодно сложные анимации. Однако главная особенность программы, делающая ее поистине уникальной, заключается в интерактивности и веб-ориентации. Реализуется она путем создания символов (пункт Create Symbol в меню Insert).
В символ может быть преобразован любой элемент — линия, фигура, текстовый блок, их группа и даже целый кадр. Предусмотрено два вида символов: график и кнопка. Кроме того, из анимированной последовательности может быть создан клип.
После создания графика и кнопки контекстное меню объекта, вызываемое правой клавишей мыши, дополняется двумя пунктами: редактирование (Edit) и свойства (Properties). В свойствах графика можно определить, в частности, цветовые эффекты, такие как яркость, прозрачность, цветовой баланс. А редактирование осуществляется точно также, как и редактирование любого другого рисованного изображения.
Более разнообразны свойства кнопки. Помимо цветовых эффектов (аналогичных цветовым эффектам графика) ей можно приписать некие действия (Actions). Среди них — считывание клипа, его проигрывание, остановка и другие. А главное — вызов некоторого файла (Get URL), как локального, так и удаленного. К сожалению, никакого броузинга в данном случае не предусмотрено, адрес надо вводить вручную на память или копировать из буфера обмена.
Редактирование кнопки также более разнообразно. Помимо изменения ее внешнего вида (аналогично любому другому объекту), кнопке можно приписать события с привязкой к положению курсора мыши: вне кнопки (Mouse Up), над кнопкой (Mouse Over), при нажатии на кнопку (Mouse Down) и при покидании области кнопки (Mouse Hit). Каждая из этих позиций может менять очертания кнопки, ее цвет, соответствующую надпись и атрибуты. В общем, данные функции реализованы примерно так же, как это делается программированием в Java или в Java-приложениях типа Button Factory. Получается довольно эффектно...
Все созданное в Macromedia Flash записывается в виде файла формата *.fla, который ничем, кроме самой этой программы, не поддерживается. Чтобы обратить свое творение лицом к внешнему миру, его надо экспортировать. Экспортировать можно отдельную картинку (то есть кадр) или последовательность кадров. В первом случае мы выбираем File-Export Image. Здесь нам предлагается на выбор: Shockwave Flash, Future Splash, метафайлы обоего рода (*.wmf и *.emf), Encapsulated PostScript (*.eps) и Adobe Illustrator (*.ai), DXF и несколько растровых форматов — BMP, JPEG, GIF и PING (TIFF опять почему-то отсутствует). Таким образом, мы сохраняем либо весь продукт нашего рисования (если он однокадровый), либо текущий кадр (слои, при этом, естественно, склеиваются воедино, первый оказывается самым нижним).
Если нам нужно экспортировать последовательность кадров, то есть созданную нами анимацию (или интерактивную схему с кнопками), следует выбрать File-Export Movie. В этом случае выбор весьма богат: во-первых, конечно, собственный формат Shockwave (*.swf), затем — анимированный GIF, AVI и последовательность кадров во всех тех форматах, которые были перечислены в предыдущем абзаце. То есть для сохранения всех элементов анимации не надо записывать каждый ее кадр в отдельности, что, согласитесь, очень удобно.
Наибольший интерес, естественно, представляет экспорт в «родной» формат Shockwave. Ведь ради этого все и затевалось, не так ли? Тут нам предлагаются следующие опции: считывать экспортированную картинку сверху вниз или снизу вверх (это не так бессмысленно, как кажется на первый взгляд: если иллюстрации не попадают в первый экран страницы, логично считывать их снизу вверх, параллельно загрузке прочих элементов), генерировать ли отчет, защищать ли от импорта (от команды Save as в броузере), также необходимо указать степень сжатия JPEG (дело в том, что все импортированные растровые картинки Flash сохраняются в стандарте JPEG, по умолчанию стоит JPEG-сжатие 50 %). Можно также указать параметры аудиоявлений — фрейму или символу, в том числе и кнопке, можно назначить звуковое сопровождение. В комплекте с программой следует некий набор звуков (весьма устрашающих, на мой взгляд).
Здесь же можно указать, в какой версии Flash сохранять конечный файл (на выбор — от первой до последней существующей). Смысл этой функции заключается в том, что броузеры до 4-х версий 3-ю Shockwave, похоже, могут не распознать, а предыдущую, наоборот, могут.
В итоге всех этих манипуляций мы получили файл в формате Shockwave (*.swf). Сам по себе он тоже ничем не поддерживается, кроме продуктов Macromedia. Однако такой файл может быть встроен в документ html. Для этой цели служит программа под названием AfterShock, автоматически устанавливаемая при инсталляции Macromedia Flash.
Первое действие здесь подразумевает добавление файла, либо swf, либо html (последнее — в случае, если он уже содержит вставку swf).
Затем нужно определить установки экспорта, такие, как замена Shockwave анимированными GIF, в случае, если броузер не сможет его распознать. Здесь же можно указать на необходимость автоматической инсталляции соответствующих plug-in.
Следующий шаг — установка параметров страницы: можно выбрать между фиксированным размером (в пикселах) и масштабом в процентах от размера открытого окна броузера. В первом случае следует указать значения ширины и высоты изображения, во втором изображение будет автоматически масштабироваться в зависимости от размера окна пользовательского броузера.
Затем устанавливаем условия прокрутки: цвет фона, непрерывность прокрутки, качество изображения и т. д. Качество определяется в диапазоне от Low до High. Следует учесть, что более высокое качество требует большей мощности от клиентской машины.
В следующей закладке можно определить параметры альтернативного изображения (для броузеров, не поддерживающих Shockwave), то есть статического или анимирован-ного GIF. И последняя закладка — параметры генерации классов Java для подмены Shockwave. В принципе, все swf-файлы можно воспроизводить через Java для большей межплатформенной совместимости.
Выполнив все эти манипуляции, (их можно проделать для группы файлов в директории, выбрав для этого режим Batch Processing в меню Preferences), следует записать готовый файл. Если в самом начале мы выбрали Add Shockwave, будет автоматически создан html-файл с именем, повторяющим имя swf-файла. Если же был добавлен html-файл, при записи нас спросят — перезаписать его или добавить новый swf к уже существующему. Таким образом, на одной странице может быть размещено любое количество элементов swf в произвольном порядке. Следует только заметить, что далеко не на всех серверах корректно воспроизводится более одного элемента swf, что напрямую зависит от настроек сервера.
Вот и все. Осталось только смотреть на свое произведение и радоваться собственной гениальности.
Впрочем, вы-то смотреть можете, поскольку плеер для Shockwave установился автоматически при инсталляции Flash, a как быть остальным?
А остальным требуется plug-in для Netscape Navigator или компонент ActiveX для MS Internet Explorer. Теоретически рассуждая, если в Shockwave были проставлены соответствующие опции, броузеры четвертых версий при первом же обнаружении swf должны автоматически связываться с узлом Macromedia и устанавливать все необходимые элементы. Иногда они так и делают. Однако, скажем, если в IE у пользователя включена высокая или средняя степень защиты (а обычно так и есть по умолчанию), установка plug-in не завершится полностью. А в следующий раз автоматической инсталляции уже не произойдет, поскольку какие-то части первой уже успеют попасть в реестр. В Netscape Navigator автоматической установки вообще, как правило, не происходит, поэтому требуется провести ее вручную.
Каким образом? Во-первых, следует скачать соответствующий plug-in с сайта Macromedia (это самораспаковывающийся архив объемом около 300 Кбайт). Во-вторых, временно отключить защиту в броузере. И наконец, в-третьих, запустить файл на исполнение. Все.
В 5-м Explorer и начиная с версии 4.6 Navigator (в том числе и в реализации для Linux) поддержка Shockwave предусмотрена изначально. Она включается при инсталляции по умолчанию.
В целом файлы Shockwave, как правило, получаются очень компактными, несколько меньше альтернативных статичных GIF и уж безусловно меньше GIF анимированных (табл. 3).
Таблица 3. Сопоставление форматов GIF и Shockwave, размер файлов в килобайтах
Формат |
Панель с кнопками |
Анимирован-ый баннер |
Карта с растровой подложкой и анимированными границами |
Файл *.swf, Кбайт |
8,6 |
2,3 |
482 |
Файл *.gif, Кбайт |
8,7* |
11,5** |
520** |
* — статичный GIF
** — анимированиый GIF
После загрузки swf-вставки щелчок правой клавишей мыши вызывает контекстное меню, позволяющее
• увеличить или уменьшить изображение;
• отключить высокое качество изображения;
• запустить проигрывание анимации, в том числе непрерывное;
• вернуться в начало анимации, переместиться на один кадр вперед или назад.
В принципе, Flash предназначен для создания всякого рода интерактивных элементов интерфейса веб-страниц. Так, сайт фирмы Abit (http://www.abit.com.tw), производящей материнские платы, целиком сделан в Macromedia Flash. Прекрасные примеры ее применения в этом качестве также можно видеть на сайте «Взгляд на цифровую фотографию» (http:// rwpbb.da.ru/). Правда, я нашел для этой программы другое применение, хотя, возможно, это и вариант забивания гвоздей микроскопом, а именно — представление картографических материалов, совмещающих растровые и векторные элементы. Именно на этом примере в следующей главе будет рассмотрен процесс создания документа Shockwave.
Подведем итоги. Macromedia Flash — не идеальное, но пока практически единственное средство для представления векторной графики в Интернете. Среди ее достоинств следует перечислить:
• возможность совмещения векторных и растровых элементов с минимальной потерей качества тех и других;
• возможность произвольного масштабирования;
• работа с прозрачными объектами, что позволяет накладывать их друг на друга;
• весьма приличные средства векторного рисования и редактирования;
• интерактивность, позволяющая относительно простыми методами привязывать к графической основе разнообразные данные;
• компактность конечных файлов.
К недостаткам я отнес бы некоторую нелогичность (или непривычность?) интерфейса и, главное, ограниченный набор импортируемых и экспортируемых форматов. Ну и, естественно, закрытость самого стандарта, препятствующая его повсеместному применению. В частности, следует учитывать, что на некоторых (не обязательно плохих) видеокартах, неправильно настроенных мониторах или при некорректно установленном на клиентской машине plug-in изображение Shockwave может выглядеть просто отвратительно.