Карта изображений

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Карта изображений (англ. image map, иногда сенсорная карта или графическая карта) — это графический объект языка разметки HTML, связанный с изображением и содержащий специальные области (активные зоны), при нажатии на которые происходит переход по определённому URL (при помощи javascript можно установить другие действия). Использование карт изображений позволяет хранить несколько ссылок в одном изображении.

Использование[править | править вики-текст]

Для добавления карты изображений на web-страницу используется парный HTML-тег <MAP>, в атрибуте "name" которого указывается уникальный в пределах документа идентификатор карты. Внутрь него добавляются непарные теги <AREA>, каждый из которых описывает одну активную зону. Затем в тег <IMG>, который необходимо связать с картой, добавляется атрибут usemap, содержащий имя привязываемой карты. Значение атрибута должно начинаться со знака решётки. При этом в теге <IMG> должны быть явно указаны размеры изображения.

Параметры (атрибуты) тега[править | править вики-текст]

Контейнер <MAP>[править | править вики-текст]

  • name — идентификатор карты изображений. Уникален в пределах документа. В XHTML атрибут name считается устаревшим, и вместо него предлагается использовать атрибут id [1].

Элемент <AREA>[править | править вики-текст]

  • shape — форма активной области. Допустимые значения: circle (окружность), rect (прямоугольник), poly (полигон).
  • alt — альтернативный текст области. Служит лишь комментарием для ссылки, поскольку на экран не выводится.
  • title — позволяет задать всплывающую подсказку для активной области.
  • coords — координаты активной области. Координаты отсчитываются в пикселях от левого верхнего угла изображения, которому соответствует значение "0,0". Первое число является координатой по горизонтали, второе — по вертикали. Список координат зависит от формы области:
  • Для окружности задаются координаты центра круга и радиус:
<AREA coords="x,y,r">
  • Для прямоугольника — координаты левого верхнего и правого нижнего угла:
<AREA coords="x1,y1,x2,y2">
  • Для полигона задаются координаты его вершин:
<AREA coords="x1,y1,x2,y2,…,xN,yN">
При этом, чтобы "закрыть" многоугольник, первая и последняя пары координат X и Y должны быть одинаковыми. Если эти значения не одинаковы, ПА (пользовательский агент) должен вычислить дополнительную пару координат, чтобы закрыть многоугольник..
  • href — Определяет адрес ссылки для области. Правила записи такие же, как и для тега <А>.

Примеры[править | править вики-текст]

Ниже приведён код, создающий карту изображений и привязывающий её к изображению:

<HTML>
    <BODY>
        <IMG width="500" height="200" usemap="#somemap" src="upload.wikimedia.org/wikipedia/commons/e/e0/Figures_for_imagemap.png">
        <MAP name="somemap">
            <AREA shape="rect" coords="6, 7, 140, 196" href="ru.wikipedia.org/Прямоугольник">
            <AREA shape="circle" coords="239, 98, 92" href="ru.wikipedia.org/Круг">
            <AREA shape="poly" coords="386,16, 344,56, 350,189, 385,132, 489,190, 496,74, 386,16" href="ru.wikipedia.org/Многоугольник">
        </MAP>
    </BODY>
</HTML>

В результате получится следующее (активные зоны расположены над изображениями фигур):

Прямоугольник Круг МногоугольникFigures for imagemap.png
Описание изображения

Преимущества и недостатки[править | править вики-текст]

Преимущества

  1. Карты позволяют задать любую форму области ссылки. Учитывая, что компьютерные изображения по своей природе прямоугольны, сделать графическую ссылку сложной формы, например для указания географического района, без карт-изображений не представляется возможным.
  2. С одним файлом удобнее работать — не приходится заботиться о состыковке отдельных фрагментов.

Недостатки

  1. Нельзя установить альтернативный текст для отдельных областей. Альтернативный текст позволяет получить текстовую информацию о рисунке при отключенной в браузере загрузке изображений. Если отключить просмотр изображений, то в итоге увидим лишь один пустой прямоугольник.
  2. При сложной форме области ссылки увеличивается объем кода HTML. Контур состоит из набора прямых отрезков, для каждой точки которого следует задать две координаты, а общее количество таких точек может быть достаточно велико. Справедливости ради, следует отметить, что сложные формы являются частным случаем и применяются достаточно редко.
  3. С картами-изображениями нельзя сделать разные эффекты, которые доступны при разрезании одного рисунка на фрагменты: эффект перекатывания, частичная анимация, индивидуальная оптимизация картинок для их быстрой загрузки и т.д.

Ссылки[править | править вики-текст]