问题描述
我希望有一个HTML画布上下文,我可以在屏幕上绘画和阅读(在这个例子中,编写文本并读取创建的形状,但这是一个普遍的问题)。我可能还想使用画布作为屏幕外帧缓冲。
I'd like to have an HTML canvas context that I can paint to and read off-screen (in this example, writing text and reading the shape that is created, but it's a general question). I may also want to use a canvas as an off-screen frame-buffer.
我想我可以创建一个隐藏的DOM元素,但我宁愿用JavaScript创建它(我可能想在运行时创建和销毁一些画布。)
I suppose I could create a hidden DOM element but I'd rather create it from JavaScript (I may want to create and destroy a number of canvas at runtime).
可能吗?
推荐答案
您可以使用 document.createElement
创建一个新的 canvas
元素:
You can create a new canvas
element with document.createElement
:
var canvas = document.createElement('canvas');
然后从中获取上下文。只要确定你设置了宽度
和高度
。您不必将画布添加到树中以使其工作:
and then get the context from it. Just make sure you set the width
and height
. You don't have to add the canvas to the tree in order to make it work:
但您绝对必须创建该节点。你可以为它创建一个函数:
But you definitely have to create that node. You could create a function for that though:
function createContext(width, height) {
var canvas = document.createElement('canvas');
canvas.width = width;
canvas.height = height;
return canvas.getContext("2d");
}
但这就是我的能力结束的地方......你是否可以以某种方式转移一个上下文到另一个上下文或画布,我不知道......
But that is where my competency ends... whether you can somehow transfer a context to another context or canvas, I don't know...
这篇关于是否可以创建没有DOM元素的HTML画布?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!