如何将渲染从 Three.js 转换为 .png 文件?

问题描述 投票:0回答:1

如何将渲染转换为 .png 图像?

我已经四处寻找了一段时间,但没有任何效果。

three.js
1个回答
10
投票

这是我使用的一个函数和一个小提琴,显示它正在工作。

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();
}

编辑 2024 年:
Three.js 手册现在有一个页面更详细地展示了如何截取屏幕截图。你最好去那里看看。
Three.js:截取画布的屏幕截图

© www.soinside.com 2019 - 2024. All rights reserved.