// 取得鼠标位置实际上是相对于window的,而canvas有自己的一套坐标系,所以需要在这里进行转换,下面的函数额外实现了当canvas与绘制大小不一致时坐标的位置缩放
function windowToCanvas(canvas, x, y) {
var bbox = canvas.getBoundingClientRect();
return { x: x - bbox.left * (canvas.width / bbox.width),
y: y - bbox.top * (canvas.height / bbox.height)
};
}
function drawGuidelines(x, y) {
context.save();
context.strokeStyle = 'rgba(0,0,230,0.8)';
context.lineWidth = 0.5;
context.beginPath();//水平
context.moveTo(0,y + 0.5);
context.lineTo(context.canvas.width, y + 0.5);
context.stroke();
context.beginPath();//垂直
context.moveTo(x + 0.5, 0);
context.lineTo(x + 0.5, context.canvas.height);
context.stroke();
context.fillText(Math.round(x)+"-"+Math.round(y), x, y);//添加文字
context.restore();
}
// Event handlers............注意在每次更新线之前都要clearRect()清除画布内容,因为不是键盘事件,所以可以直接加在canvas上.........................................
canvas.onmousemove = function (e) {
var loc = windowToCanvas(canvas, e.clientX, e.clientY);
drawGuidelines(loc.x, loc.y);
};
坐标查看器3
原创
©著作权归作者所有:来自51CTO博客作者生而为人我很遗憾的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:基本图形绘制API2
下一篇:canvas事件4

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Cisco路由器常用查看命令
Cisco路由器常用查看命令
链路 加解密 路由表 Cisco路由器常用查看命令】 -
图片查看器、网页源码查看器
这些代码应该在Android2.2版本上运行,高版本可能会出错原理图:1、图
android html java -
html查看器android
html查看器
android java .net ide xml