SVG.js 3.0.5已发布,我想更新自己的nodejs应用程序,该应用程序使用2.7至3.0.5的库来生成svg。
要使用node.js运行该库,您需要使用svgdom(https://github.com/svgdotjs/svgdom)
这里的问题是构造函数发生了变化,我不知道如何在node.js中使用它。
// array_diff_key returns an array off different items compared to second parameter
if ($card === array_diff_key($totalCard,$card)) {
// $card does not exist
// toDo: add to $totalCard
} else {
if($product === $totalCard[$productId]) {
// raise quantity
} else {
// add as new child
}
}
答案 0 :(得分:0)
我遍历了源代码,看起来应该可以使用
const window = require("svgdom");
const SVG = require("@svgdotjs/svg.js");
SVG.registerWindow(window, window.document);
答案 1 :(得分:0)
我更新了自述文件,以便更好地反映新用法:
npm install @ svgdotjs / svg.js svgdom
// returns a window with a document and an svg root node
const window = require('../svgdom')
const document = window.document
const {SVG, registerWindow} = require('@svgdotjs/svg.js')
// register window and document
registerWindow(window , window.document)
// create canvas
const canvas = SVG(document.documentElement)
// use svg.js as normal
canvas.rect(100,100).fill('yellow').move(50,50)
// get your svg as string
console.log(canvas.svg())
// or
console.log(canvas.node.outerHTML)
请注意,svg.js v3不再导出此大对象。相反,您必须要求所需的功能。自述文件中的更多信息:https://github.com/svgdotjs/svgdom