一般情况下,鼠标位置和笔尖是正常的,偶尔会出现 鼠标和笔尖位置出现偏移,如何解决
贴上关键代码
canvas.onmousedown = function (e) {
var e = e || event;
ctx.beginPath();
ctx.moveTo(e.clientX - canvas.offsetLeft, e.clientY - canvas.offsetTop);
ctx.strokeStyle = 'rgb(' + selColorR + ', ' + selColorG + ', ' + selColorB + ')';
ctx.lineWidth = panWidth;
document.onmousemove = function (e) {
var e = e || event;
var x = e.clientX - canvas.offsetLeft;
var y = e.clientY - canvas.offsetTop
ctx.lineTo(x, y);
ctx.stroke();
//console.log(x+','+y);
op.push({ 'x': x, 'y': y });
}
document.onmouseup = function (e) {
this.onmousemove = null;
ctx.closePath();
//数组去重 TODO
reDrew(ctx1, op)
op = [];
}
}