phoenixweiss
@phoenixweiss

Как максимально быстро конвертировать координаты html imagemap из rect в poly?

Задача подготовить этажные планы здания для выкладки на сайт.
Есть собственно размеченные этажные планы, из которых можно экспортировать координаты областей в формате html imagemap. Все бы ничего, но координаты есть 2-х типов:
<area shape="poly" coords="676,254,675,334,708,334,710,254" href="***10***.html" alt="10" title="10"/>
<area shape="rect" coords="581,373,663,459" href="***8***.html" alt="8" title="8"/>

так вот, с poly проблем нет никаких, он понимается как надо, а вот с rect админка сайта не работает, и не понимает что прямоугольную область можно задать всего по двум координатам.
Есть конечно вариант сделать это вручную, преобразовав таким образом:

581,373,663,459 --> (x1=581, y1=373)+(x2=663, y2=459) --> ((x1=581, y1=373)+(x2=663, y1=373))+((x2=581, y2=459)+(x1=581, y2=459)) --> 581,373,663,373,663,459,581,459
или
<area shape="rect" coords="581,373,663,459" href="***8***.html" alt="8" title="8"/> --> <area shape="poly" coords="581,373, 663,373,663,459,581,459" href="***8***.html" alt="8" title="8"/>


Нет времени, желания и возможности копаться в исходниках сайта дабы дописать туда модуль подстановки недостающих частей координат, т.к. работа разовая. Не очень хочется копать регулярки и решать с их помощью.
Подскажите максимально быстрое решение как преобразовать координаты из rect в poly. Может кто сталкивался с подобной задачей или знает какие-то плагины для Sublime Text для подобного преобразования на лету?

P.S. решение не должно быть правильным, оно должно быть быстрым и удобным, т.к. материала на обработку много, а срок очень сжатый
  • Вопрос задан
  • 3026 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ну, самый быстрый способ всё-таки на регулярке.

sed -ri 's/shape="rect"\s+coords="([0-9]+),([0-9]+),([0-9]+),([0-9]+)"/shape="poly" coords="\1,\2,\3,\2,\3,\4,\1,\4"/i' filename
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы