Как скачать DOM как SVG в html2canvas? - PullRequest
0 голосов
/ 29 августа 2018

как я могу сохранить dom как svg файл, используя html2canvas? Для загрузки в качестве png я сделал что-то вроде ниже:

html2canvas(document.querySelector('#demo')).then(function(canvas) {
                saveAs(canvas.toDataURL(), 'image.png');
});

Как мне добиться такого же результата, чтобы сохранить его как файл SVG?

1 Ответ

0 голосов
/ 29 августа 2018

Вы не.

Причина, по которой вы можете экспортировать в png / jpg / etc, заключается в том, что холст представляет собой слой представления пиксельной графики, поэтому для удобства он знает, как создавать поддерживаемые браузером типы изображений, использующие встроенные растровые изображения.

Если вы хотите использовать векторную графику, тогда вам действительно нужно нарисовать векторов, а это означает, что вы не полагаетесь на API Canvas. Вы либо катите свой собственный набор инструкций векторного рисования (непосредственно генерируете SVG, либо растеризуете объекты на холст исключительно в качестве слоя представления), против которого я бы порекомендовал, либо используете один из нескольких уже имеющихся пакетов векторной графики, таких как Paper.js, Тройник, Рафаэль и т. Д.

...