@zeni1agent

Как превратить svg файл в массив координат и обратно?

Мне нужно превратить свойства из patch в массив данных в котором хранится положение каждой точка по X и Y а также наклон и острота угла.
Но я не понимаю синтаксис svg файла
<path class="path_1" d="M366.5,74.5c1.19,58.5-.19,314.24-.19,314.24V678.5H987V74H670.89Z" transform="translate(-365.81 -73.5)"/>
<path class="path_2" d="M366.5,74.5c43,68,289,295,289,295l-289.19,309,317.19-279L987,678.5l-270.5-308L987,74,682.5,335.5Z" transform="translate(-364.4 -72.12)"/>
<path class="path_3" d="M1037.5,403.5c-79.07-14.86-332-37-332-37l-35-359-16,358-352,28,351.21,15.83L682.5,751.5l20-343.21Z" transform="translate(-302.46 -7.45)"/>

У всех файлов одинаковое количество точек
Есть ли какие нибудь модули или скрипты на javascript которые преобразуют svg файл в читабельный массив
var path = [x, y, corner_1, corner_2]
  • Вопрос задан
  • 853 просмотра
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
Chrome убрал исключённый из нового стандарта SVG path.pathSegList, но при этом не добавил path.getPathData() - предлагаемую этим стандартом альтернативу. Гениальный ход, надо сказать.
Так что варианты:
1. юзать полифил для pathSegList - так по крайней мере в фоксе оно будет работать нативно(до поры).
2. юзать полифил для getPathData() - так когда-нибудь везде заработает нативно(пока - нигде).
3. использовать какую-нить svg-либу общего назначения - так либа подумает за вас, а у вас в проекте будет лежать сотня-другая кило мусорного кода.
4. написать совой велосипед - так у вас будет кусочек кода подходящий именно вам, и плевать на нативность, чай не тысячами путей ворочаем.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы