未捕获的类型错误:无法在“CanvasRenderingContext2D”上执行“drawImage”

问题描述

我正在使用 ar.js 库在网站上加载我的相机。

现在我想使用画布从相机捕捉屏幕。但是我得到了标题这样的错误

这是我尝试做的:

<!DOCTYPE html>
<html>
    <script src="https://aframe.io/releases/0.8.2/aframe.min.js"></script>
    <script src="https://cdn.rawgit.com/jeromeetienne/AR.js/1.6.2/aframe/build/aframe-ar.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.min.js"></script>
    
    <body style="margin: 8px;">
        <div id="wrapper">
            <canvas style='visibility:hidden;' id='my-canvas'>
            <a-scene id="my-camera" embedded arjs>
                
            </a-scene>
            <a-entity camera></a-entity>
        </div>
    </body>
    <script>
        window.onload = function() {
            var camera = document.getElementById('my-camera');
            var canvas = document.getElementById('my-canvas');
            var context = canvas.getContext('2d');
            context.drawImage(camera,400,400);
            window.location = canvas.toDataURL("image/png");
        }
    </script>
</html>

我的预期结果是一个带有捕获图像的新标签。但它有错误

未捕获的类型错误:无法执行 'drawImage' 'CanvasRenderingContext2D':提供的值不是类型 '(CSSImageValue 或 HTMLImageElement 或 SVGImageElement 或 HTMLVideoElement 或 HTMLCanvasElement 或 ImageBitmap 或 离屏画布)' 在 window.onload

我该如何解决这个问题?

非常感谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...