我无法使用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画布的屏幕截图?
答案 0 :(得分:5)
谢谢LJ,我只需要在获取webGl上下文时启用preserveDrawingBuffer标志。截图现在完美无缺!