jquery canvas 질문 채택완료

여기서 그리면 선이 아니라 끊어지면서 나오는데 어떻게 이어야할까요?

 

html

   <canvas id="myCanvas" width="500" height="500"></canvas>

스크립트

 window.onload = function(){
         click = false;
         var width =$('canvas').css('borderLeftWidth');
         ctx = document.getElementsByTagName('canvas')[0].getContext('2d'),
  
  $(window).mousedown(function(){
    click = true;
  });
  
  $(window).mouseup(function(){
    click = false;
  });
  
  $('canvas').mousedown(function(e){
    draw(e.pageX, e.pageY);
  });
  
  $('canvas').mouseup(function(e){
    draw(e.pageX, e.pageY);
  });
    
  $('canvas').mousemove(function(e){
    if(click === true){
      draw(e.pageX, e.pageY);
    }
  })
  function draw(X,Y){
      console.log(X+","+Y)
      ctx.beginPath();
      ctx.moveTo(X,Y);
    ctx.lineTo(X+1,Y+1);
      ctx.stroke();
  }
};

 

 

답변 1개

채택된 답변
+20 포인트

https://stackoverflow.com/questions/21472714/i-am-trying-to-draw-a-line-on-canvas-by-using-mouse-events

 

마우스다운, 무브 별로 시작지점이 다르게 설정해야 된다는 것 같네요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고