gpt4 book ai didi

javascript - 如何截取包含视频和 Canvas 的 div 的屏幕截图?

转载 作者:行者123 更新时间:2023-12-02 20:55:37 34 4
gpt4 key购买 nike

注意:这不是重复的,因为我没有找到任何与视频和 Canvas 截图相关的问题,并且我尝试了 html2canvas

我们有一个 div,内部包含视频元素和 Canvas 。视频用于流式传输, Canvas 用于在视频上绘制任何内容。现在,如果我截取 div 的屏幕截图,它必须包含视频帧和绘图。我没有找到任何方法来得到这个。我尝试了 html2canvas 但它只给出了 Canvas 的屏幕截图。下面是代码。

HTML:

<div id="remoteScreen">
<video id="remoteVideo" autoplay></video>
<canvas id="remoteCanvas"></canvas>
</div>

<button id="captureButton">Capture</button>

CSS:

video {
max-width: 100%;
width: 320px;
}

canvas {
position: absolute;
background: transparent;
}

JS:

const captureBtn = document.querySelector("#captureButton");
captureBtn.addEventListener('click', captureCanvasVideoShot);

function captureCanvasVideoShot() {
html2canvas(document.querySelector("#remoteScreen")).then(function(canvas) {
document.body.appendChild(canvas);
});

通过使用 html2canvas,我想我会得到视频和 Canvas 的组合屏幕截图,因为 Canvas 位于视频之上,并且两者都是 RemoteScreen div 的一部分。但我只得到了 Canvas 的屏幕截图。任何人都可以告诉我是否有任何方法可以获取视频 + Canvas 组合的屏幕截图,或者我可以将任何其他配置参数传递给 html2canvas 来获取视频 + Canvas 组合的屏幕截图吗?

最佳答案

html2canvas 无法重现视频屏幕截图。它通过读取页面的 HTML 元素并根据 CSS 样式信息渲染它们的图片来生成图像。它实际上并不截取屏幕截图。

关于javascript - 如何截取包含视频和 Canvas 的 div 的屏幕截图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61491425/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com