是否可以创建一个任意大小的缓冲区并像在canvas元素上一样工作?
我想创建一个图形(> 10'000 x 10'000像素)并使用像drawImage()
这样的方法。完成所有操作后,应将部件复制到canvas元素。
createImageData()
可以制作缓冲区,但无法在其上使用drawImage()
等方法。
有没有办法在不制作隐形画布元素的情况下实现我的需求?
谢谢!
答案 0 :(得分:6)
为什么不使用canvas元素?它不必是“不可见的”(如“它是页面的一部分,但被设计为不可见”)...只需创建一个如上所述的新画布,而不是将其附加到您的文档中。现在你可以用它做任何你想做的事情,而不用担心在你的实际页面上有额外的隐藏画布。
答案 1 :(得分:1)
查看文档片段。 John Resig DOM DocumentFragments和MDC。
我不确定它是否是跨浏览器......也许有人可以为我澄清一下?
你试过了吗?
var canvas = document.createElement("canvas");
canvas....
containerElement.appendChild(canvas.cloneNode());