Canvas 在paper.js中创建戳记/符号笔刷

Canvas 在paper.js中创建戳记/符号笔刷,canvas,paperjs,Canvas,Paperjs,我正在尝试从导入的.svg创建一个符号,然后在每次onmousemove时将其克隆到画布上。下面的代码克隆了符号一次,但随后引发了一个错误 我不熟悉javascript和paper.js,因此非常感谢您的帮助 移动鼠标的函数(事件){ var symbol=新符号(project.importSVG(“../img/brush.svg”); var clone=symbol.clone({ 中心:event.middlePoint }); }您必须在事件处理功能之外创建符号,否则每次鼠标移动事

我正在尝试从导入的.svg创建一个符号,然后在每次onmousemove时将其克隆到画布上。下面的代码克隆了符号一次,但随后引发了一个错误

我不熟悉javascript和paper.js,因此非常感谢您的帮助

移动鼠标的函数(事件){ var symbol=新符号(project.importSVG(“../img/brush.svg”); var clone=symbol.clone({ 中心:event.middlePoint });
}您必须在事件处理功能之外创建符号,否则每次鼠标移动事件都会读取svg,每次都会创建一个新符号。而且不需要克隆,只需放置符号就可以了。下面的snipplet可以工作(使用示例svg),但它不会从文件中读取svg

var symbol =  new Symbol(project.importSVG('<svg  xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><rect x="10" y="10" height="100" width="100" style="stroke:#ff0000; fill: #0000ff"/></svg>'));

function onMouseMove(event) {      
  symbol.place(event.middlePoint);  
}
var symbol=新符号(project.importSVG(“”));
mouseMove函数(事件){
符号。地点(事件。中点);
}