Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript在画布上绘制图像_Javascript_Html - Fatal编程技术网

使用javascript在画布上绘制图像

使用javascript在画布上绘制图像,javascript,html,Javascript,Html,为什么画布上什么都没有?图片和代码在同一个文件夹中,我试图直接复制一些代码,只是更改了源代码,但仍然不起作用。这让我相信,这不是我画画的实际方式的错误,而是我加载画布的方式的错误? 我可以在画布上添加其他东西,但不能添加图片 <!DOCTYPE html> <head></head> <body> <script> var canvas = document.createElement("canvas"); var c

为什么画布上什么都没有?图片和代码在同一个文件夹中,我试图直接复制一些代码,只是更改了源代码,但仍然不起作用。这让我相信,这不是我画画的实际方式的错误,而是我加载画布的方式的错误? 我可以在画布上添加其他东西,但不能添加图片

<!DOCTYPE html>
<head></head>
<body>
<script>

    var canvas = document.createElement("canvas");
    var ctx = canvas.getContext("2d");
    canvas.height = 500;
    canvas.width = 800;
    document.body.appendChild(canvas);

    var imag = new Image();

    imag.onload = function() {
        context.drawImage(imageObj, 0, 0);
    };
    imag.src = "underwater.png";

</script>
</body>

您很可能是从某处复制了此代码,但忘记更改图像对象名称

<!DOCTYPE html>
<head></head>
<body>
<script>

    var canvas = document.createElement("canvas");
    var ctx = canvas.getContext("2d");
    canvas.height = 500;
    canvas.width = 800;
    document.body.appendChild(canvas);

    var imag = new Image();

    imag.onload = function() {
        context.drawImage(imag, 0, 0);
    };
    imag.src = "underwater.png";

</script>
</body>

什么是imageObj?您在drawImage调用中使用了它,但它没有在任何地方定义。是否检查了错误?已声明ctx并正在使用上下文。。。