Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Рекомендации по выполнению КР.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
5.06 Mб
Скачать
  1. Чем иллюстрируются сайты.

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

Представлению графики в Сети посвящена обширная ли­тература, как в печатной, так и в электронной форме. Однако там, как правило, рассматриваются вопросы использования изображений в качестве элемента дизайна. Мы же погово­рим о "Представлении графического контента на примере хотя бы той же геологии.

В качестве тестовых изображений, позволяющих проанали­зировать особенности различных графических форматов, я использовал четыре карты в формате 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 для Win­dows. После не вызывающей проблем распаковки и запуска появляется окно следующего вида: в левой стороне вверху — дерево каталогов (папки, содержащие графические файлы, выделены цветом), в правой — содержимое выбранного ка­талога в виде иконок; те из них, которые соответствуют известным программе графическим файлам (среди них — 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).

Концептуально слои примерно сходны с таковыми в Corel­DRAW. Каждый слой имеет четыре состояния — текущий (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. Здесь нам предлагается на выбор: Shock­wave 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, что напрямую зависит от настроек сервера.

Вот и все. Осталось только смотреть на свое произведение и радоваться собственной гениальности.

Впрочем, вы-то смотреть можете, поскольку плеер для Shock­wave установился автоматически при инсталляции 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 может выглядеть просто отвратительно.