Использование технологий WWW для доступа к базам данных

       

Картрированные изображения


Очень мощным средством организации гипертекстовых ссылок является

так называемые ``картрированые изображения'' (imagemaps). Они представляют

собой изображения с чувствительными областями, то есть, выделение различных

частей изображения указательным устройством приводит к движению по

гипертексту в различных ``направлениях''.

Картрированные изображения бывают двух типов: обрабатываемые на сервере

(server-side) или на клиенте (client-side).

Для создания карт на стороне клиента используется тег HTML под названием

<MAP>. Синтаксис тега таков:

<MAP NAME=``имя карты''>

<AREA параметры>

...

<AREA параметры>

</MAP>

где параметры тега <AREA> могут быть такими:

SHAPE - определяет форму активной области для карты. Может принимать значения RECT, CIRCLE, POLY, DEFAULT, соответствующие областям



прямоугольной, круглой, многоугольной и области по умолчанию соответственно.

Все типы областей, кроме DEFAULT, требуют указания координат в атрибуте

COORDS.

COORDS - определяет координаты областей. В зависимости от типа области может иметь вид: для прямоугольной--значения координат верхнего левого

и правого нижнего углов, (``x1,y1,x2,y2''); для круговой--координаты

центра и радиус (``x,y,r''); для многоугольной--список координат вершин

(``x1,y1,x2,y2,x3,y3,...'');

HREF - определяет URL, на который ссылается данная область.

NOREF - указывает, что область ``мертва'', то есть за ней не скрывается ссылка.

Чтобы использовать локальную карту на изображении в параметре USEMAP

тега <IMG> необходимо указать имя карты.

Например:

<MAP NAME="mymap">

<AREA SHAPE="RECT" COORDS="420,220,520,260" HREF=\\

"http://www.some.com/rect/">

<AREA SHAPE="CIRCLE" COORDS="320,150,30" HREF=\\

"http://www.some.com/circle">

<AREA SHAPE="POLY" COORDS="150,450,300,450,225,240" \\

HREF="http://www.some.com/poly">


<AREA SHAPE="DEFAULT" HREF="http://www.some.com/">

</MAP>

......

<IMG SRC="picture.gif" ALT="Imagemap" BORDER="0" WIDTH="640" \\

HEIGHT="480" USEMAP="#mymap">

даст примерно слежующую карту на изображении:



Рис. 2.2.1: Пример карты на изображении

Для того, чтобы создать карту, обрабатываемую на сервере, необходимо

административное вмешательство, так как на сервере придется изменять

файл конфигурации для CGI-модуля обработки информации от карты.

При использовании различных Web-серверов формат описания карты

на сервере может варьироваться. Два наиболее распространенных формата

произошли от HTTP-серверов NCSA и CERN. Приведем пример использования

карты с сервером NCSA httpd.

На стороне сервера, файл (например) /usr/local/etc/httpd/conf/imagemap.conf:

# This is a map for NCSA server

test_map : /home/joe/public_html/maps/test.map

Использовать эту карту можно примерно таким образом:

<A HREF="http://www.myhost.domain/cgi-bin/imagemap/test_map">

<IMG SRC="test_img.gif" ALT="Server-side imagemap" WIDTH="320" \

HEIGHT=200 ISMAP></A>

Ключевым в данном примере является слово ISMAP, которое указывает браузеру,

что при активации изображения необходимо послать серверу информацию

о координатах курсора указательного устройства относительно изображения,

после чего ждать от сервера ответа в виде URL, на который браузер должен

``перейти''.

Видно, что для реализации карты, обрабатываемой сервером, требуется

больше шагов, но иногда без карт такого рода просто не обойтись: например,

когда требуется ТОЧНО знать координаты внутри изображения (скажем, когда

обрабатывается какая-либо шкала).

Для создания карт существует множество программ для различных OS,

например ImageMap компании .

Эта программа существует в версиях для MS Windows и для Linux.


Содержание раздела