将图像绘制到HTML画布

时间:2016-12-21 19:20:03

标签: javascript html canvas

我已经对此处的其他SO帖子和MDN文档等进行了审核,但仍然无法弄清楚为什么我的图片没有出现在画布中。我对此表示感谢。

HTML

<canvas id="myCanvas" style="height:500px;width:500px;border:0.5px solid #979797;"></canvas>

的JavaScript

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = new Image();
img.onload = function() {
  ctx.drawImage(img, 0, 0);
}
img.src = 'http://i.imgur.com/3dItN1Y.png';

https://jsfiddle.net/rsL3vsju/

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为您正在设置画布&#39; CSS的高度和宽度,如下所示:

<canvas id="myCanvas" style="height: 500px; width: 500px; border: 0.5px solid #979797;"></canvas>

这是错误的代码。正确的方法是使用画布的heightwidth属性,如下所示:

<canvas id="myCanvas" height="500" width="500" style="border: 0.5px solid #979797;"></canvas>