Я вижу, в чем здесь проблема: создание, скажем, карты мира обычным способом - довольно большая нагрузка. Если я правильно понял, вам нужно иметь карту территории изображение и поместить эффекты наведения, чтобы область наведения соответствовала границам страны точно . SVG можно использовать для карты (рисование уже выполнено), но проблема в том, как сгенерировать карту области HTML с использованием координат карты SVG. Есть решение (я пробовал его, выглядит хорошо, по крайней мере, с предоставленной демонстрацией), которое переводит SVG в Raphael (генерирует координаты) с использованием PHP. Но опять же, для этого вам нужен Raphael.js ... хорошо, если вы передумаете: https://github.com/atirip/svg2raphael. И если вы не знакомы с Рафаэлем, потребуется время, чтобы привыкнуть к нему, документация не так хороша для меня -.
Редактировать: Я могу подтвердить, что перевод из SVG-> rapahel.js работает, но файлы SVG требуют некоторых настроек. Что я вижу в примере SVG, представленном в svg2raphael, файлы были сделаны с помощью Adobe Illustrator. Я пытался с SVG (обычный) из Inkscape, и он не работал должным образом, но мне удалось решить проблемы, например:
- svg2raphael не будет переводить Inkscape, сгенерированный
<path style="fill:#ff0000" ...></path>
(установит fill = "none" !!!, поэтому результат невидим, но будет переведен правильно <path fill="#ff0000" ...></path>
Похоже, он будет игнорировать все внутри style = "".
- svg2raphael неправильно воспринимает выравнивания из Inkscape SVG, поэтому вам нужно либо переместить иллюстрацию в Inkscape, либо отредактировать файл SVG с помощью текстового редактора и изменить значение M на M0,0.
- svg2raphael может переводить несколько элементов svg, но смотрит на основной тег, который генерирует Inkscape для выравнивания групп иллюстраций, иногда вся иллюстрация удаляется от области рендеринга, и вы ничего не видите. Надеюсь, это поможет!
Редактировать 2: Вы можете использовать стиль Inkscape = "" для создания правил CSS для применения к SVG, который отлично работает и сохраняет стиль вне SVG / Raphael!