Манипулировать svg вне DOM, прежде чем поджечь его

Итак, я работаю над манипуляцией svg, и я смотрю на svg.js. Мой вопрос: могу ли я манипулировать svg в фоновом режиме, прежде чем импортировать его в DOM? Мне не нужно исходное изображение, просто манипуляция, которую я делаю с ним.

Лучшее

Уточните, пожалуйста, откуда взялось «исходное изображение»? Опишите, какой рабочий процесс вы хотите достичь.

ccprog 23.04.2018 16:26

Итак, в основном, скажем, у меня есть svg, исходящий от иллюстратора. Я могу загрузить его на страницу, но я хочу не отображать его напрямую, как есть. Вместо этого я хочу выбрать путь за путем все элементы и преобразовать их во что-то другое. Этот новый файл - это то, что я хочу в конечном итоге отобразить.

piLeoni 23.04.2018 16:50

Опишите «закачку». К серверу?

ccprog 23.04.2018 16:56

Фактически, на веб-страницу. Как во время загрузки страницы, так и от пользователя.

piLeoni 23.04.2018 17:14

Опишите, пожалуйста, также, что именно вы подразумеваете под манипуляцией? примеры методов или что угодно из svg plz

Sergey Rudenko 23.04.2018 20:06

Вы должны немного вставить его в дом, прежде чем манипулировать им. Конечно, вы можете скрыть это, но тогда такие методы, как bbox, больше не будут работать. Хотя трансформации должны быть в порядке ...

Fuzzyma 23.04.2018 23:19
Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
0
6
44
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

svg.js может управлять только узлами. Находятся ли они в DOM или нет, в большинстве случаев не имеет значения. Однако вы не можете получить ограничивающую рамку для элемента, которого нет в dom. Это может быть проблемой при использовании методов, основанных на методе bbox.

Кроме того, это просто:

let canvas = SVG.adopt(rootNode)
canvas.rect(200, 200)

// or more abstract
// creates rect node outside of the dom
let rect = new SVG.Rect().size(200, 200)

Другие вопросы по теме