如何将来自three.js的渲染转换为.png文件?

5
我该如何将渲染转换为 .png 图片?
我已经找了一段时间,但没有什么效果。

1
使用canvas.toDataURL("image/png"); - Andy Ray
1个回答

9
这是我使用的函数,这里有一个演示它工作的代码片段。
function takeScreenshot() {
    // For screenshots to work with WebGL renderer, preserveDrawingBuffer should be set to true.
    // open in new window like this
    var w = window.open('', '');
    w.document.title = "Screenshot";
    //w.document.body.style.backgroundColor = "red";
    var img = new Image();
    img.src = renderer.domElement.toDataURL();
    w.document.body.appendChild(img);

    // download file like this.
    //var a = document.createElement('a');
    //a.href = renderer.domElement.toDataURL().replace("image/png", "image/octet-stream");
    //a.download = 'canvas.png'
    //a.click();
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接