Javascript 从现有HTML5画布获取FabricJS画布对象

Javascript 从现有HTML5画布获取FabricJS画布对象,javascript,html5-canvas,fabricjs,Javascript,Html5 Canvas,Fabricjs,我有一个带有红色矩形的HTML5画布: <canvas id="c" width="209" height="209" style="border: 1px solid rgb(0, 0, 0); position: absolute; width: 209px; height: 209px; left: 0px; top: 0px; -webkit-user-select: none;" class="lower-canvas"></canvas> 现在,我想使用

我有一个带有红色矩形的HTML5画布:

<canvas id="c" width="209" height="209" style="border: 1px solid rgb(0, 0, 0); position: absolute; width: 209px; height: 209px; left: 0px; top: 0px; -webkit-user-select: none;" class="lower-canvas"></canvas>

现在,我想使用fabricjs库在其上绘制更多的线条,并在现有画布上工作

但是如果我做了
var canvas=newfabric.canvas('c'),画布变为空白,画布上的所有对象消失

因此,我正在寻找一种从现有画布检索fabricjs对象的方法


提前谢谢你的帮助

我想这已经解决了也许是一个dup?你想序列化画布吗?然后,您可以使用JSON.stringify(canvas)保存画布JSON,并使用canvas.loadFromJSON()重新加载它。@bfmags-这可能对我有用,尽管我将其视为解决方法。我不明白为什么现有的canvas html5元素不能直接由fabricjs加载,而不经过图像处理或序列化。我在寻找一个更直接的解决方案,没有变通办法。但是,如果不解决这个问题,这可能是不可能的,所以你不妨继续做下去,让你的建议成为一个答案:)感谢你们两人的投入。@columination\u Hoax-和上面的评论一样,首先将它序列化似乎是一个太多的步骤,就像是绕过这个问题。但也许是我唯一的选择,谢谢你的投入!HTML5CanvasNativeAPI是一个位图绘制API,只是一个2D位图,而fabricjs添加了对对象的支持