我创建了一个带有3D webgl画布的离子应用程序。 我尝试使用以下代码(来自https://www.npmjs.com/package/com.darktalker.cordova.screenshot)获取包含webgl内容的html屏幕截图:
navigator.screenshot.save(function(error, res) {
if (error) {
console.error(error);
} else {
console.log('screenshot saved in: ', res.filePath);
defer.resolve(res.filePath);
}
}, extension, quality, filename);
截图已成功拍摄,但缺少渲染的3D画布。我不知道为什么会这样。你能给我一个提示吗?
答案 0 :(得分:1)
对于那些遇到同样问题的人,我使用以下解决方法解决了这个问题:
只需在android:scaleType="fitXY"
下方添加<img id="placeholder" src=""/>
并修改屏幕截图功能,如下所示:
<canvas id="cv" ></canvas>
确保添加延迟,以便在截取屏幕截图之前更新DOM!