webgl canvas返回透明图像的toDataURL()

时间:2015-07-29 20:44:57

标签: javascript html5 canvas webgl

我无法使用dataUrl()来工作。这是我的代码,我试图获取画布的图像并将其用作现有图像元素的来源。

var canvas = document.getElementById('glcanvas');
canvas.setAttribute('crossOrigin','anonymous');
var img = document.getElementById('imageToShowCanvas');
img.src = canvas.toDataURL();

imageToShowCanvas显示的是一个破碎的网址。当我在console.log中调用toDataUrl()的结果时,我得到一个显示带有画布高度和宽度的透明图像的链接。

我已经听说过cors问题导致这样的问题,但我使用chrome和-allow-file-access-from-files标志,并且控制台中没有任何安全错误。有没有更简单的方法来获取我的webGl画布的屏幕截图?

1 个答案:

答案 0 :(得分:5)

谢谢LJ,我只需要在获取webGl上下文时启用preserveDrawingBuffer标志。截图现在完美无缺!