[英]Can we add putImageData to fabric canvas instead of fromURL
fabric.Image.fromURL(hc.toDataURL(), function(img) { // add image onto canvas Canvas.add(img); img.hasControls = false; img.hasBorders = false; img.hasControls = false; img.hasRotatingPoint = false; img.selectable = false; });
上面的代码有助于将图像渲染到画布,但我想使用类似putImageData / drawImage的东西,因为我必须从另一个画布中绘制图像。 并且根据实时操作使用toDataURL超过5 MB的图像是非常糟糕的性能来图。
我还想在画布中间渲染图像。 Fabricjs只需将图像传递给dataURL并按原样渲染。
任何帮助将不胜感激。
fabric.Image()
就像行ctx.drawImage
接受canvasElement
作为imageSource。
所以你可以称之为
canvas.add(new fabric.Image(yourCanvasToDraw));
如果你想让它在画布中居中:
canvas.add(new fabric.Image(c, {left: canvas.width/2-c.width/2, top: canvas.height/2-c.height/2}));
请注意, ctx.getImageData
+ ctx.putImageData
至少与ctx.toDataURL
一样慢,它们都比ctx.drawImage
慢得多ctx.drawImage
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.