Я попытался найти подходящую библиотеку SVG для современных браузеров. Моя цель - решить, какая библиотека подходит для создания простого онлайн-редактора SVG, например. редактирование текста и пути и обрезание текста с помощью путей.
Я нашел две библиотеки, которые могут быть подходящими: Snap.svg и Svg.js.
SNAP.SVG
Github: https://github.com/adobe-webplatform/Snap.svg
Исходные коды: 6925
Github Звезд: 3445
Doc: http://snapsvg.io/docs/
Начало работы: http://snapsvg.io/start/
Пример стартера (JSBIN)
var draw = Snap(800, 600);
// create image
var image = draw.image('/images/shade.jpg',
0, -150, 600, 600);
// create text
var text = draw.text(0,120, 'SNAP.SVG');
text.attr({
fontFamily: 'Source Sans Pro',
fontSize: 120,
textAnchor: 'left'
});
// clip image with text
image.attr('clip-path', text);
SVG.JS
Github: https://github.com/svgdotjs/svg.js
Исходные коды: 3604
Github Звезд: 1905
Doc: https://svgdotjs.github.io/
Пример стартера (JSBIN):
var draw = SVG('drawing');
// create image
var image = draw.image('/images/shade.jpg');
image.size(600, 600).y(-150);
// create text
var text = draw.text('SVG.JS').move(300, 0);
text.font({
family: 'Source Sans Pro',
size: 180,
anchor: 'middle',
leading: '1em'
});
// clip image with text
image.clipWith(text);
Использование кажется довольно похожим.
В чем основные отличия между этими двумя библиотеками?