我正在尝试一个脚本来绘制方格纸,从画布中的网格,从潜入到html5。结果应该绘制一个边10px的正方形网格,但我得到的大小约为20px,而不是确切的正方形。
下面是代码,`帆布不按预期工作
<html>
<head>
<style>
body{
margin: 20px 20px 20px 20px;
}
canvas{
width: 500px;
height: 375px;
border: 1px solid #000;
}
</style>
<script type="text/javascript">
function activate(){
var canvas =document.getElementById("exp");
var context = canvas.getContext("2d");
for (var x=0.5;x<500;x+=10){
context.moveTo(x,0);
context.lineTo(x,375);
console.log(x);
}
for (var y=0.5;y<375;y+=10){
context.moveTo(0,y);
context.lineTo(500,y);
}
context.strokeStyle="#000";
context.stroke();
}
</script>
</head>
<body>
<canvas id="exp"><script type="text/javascript">activate();</script></canvas>
</body
</html>
这是输出:
而实际输出应该是:
注:我并不担心色差。我不明白的是为什么2行之间的空间大约是20px(通过firefox上的测量工具检查)而不是10px。
此外,在打印x的值时,它会给出正确的值(即每次增加10)。
你错过了''''''