캔버스에 클릭, 마우스 이동 및 다른 클릭으로 사각형을 그리려합니다. 첫 번째 클릭 후 사용자의 커서를 따라 가서 주어진 좌표에서 모양이 어떻게 보이는지 캔버스에 채워진 사각형의 미리보기를 표시하려면 어떻게해야합니까?사용자의 사각형이 어떻게 보이는지 어떻게 표시합니까?
지금까지 모든 좌표에서 사각형이 어떻게 보이는지 보여주지 않고도 사각형을 성공적으로 만들 수 있습니다. 여기
지금까지 코드 :이 HTML5 튜토리얼 ( http://www.html5canvastutorials.com/advanced/html5-canvas-mouse-coordinates/)에서 본 바와 같이 나는, 마우스 움직임에 이벤트 리스너를 사용하려고var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var canvasOffset = $("#canvas").offset();
var offsetX = canvasOffset.left;
var offsetY = canvasOffset.top;
var startX;
var startY;
var drawingShape = false;
//function getMousePos(canvas, ev) {
//var rect = canvas.getBoundingClientRect();
//}
//canvas.addEventListener('mousemove', function (ev) {
//var mousePos = getMousePos(canvas, ev);
//}
function setMousePosition(e) {
mouseX = parseInt(e.clientX - offsetX);
mouseY = parseInt(e.clientY - offsetY);
$("#downlog").html("Down: " + mouseX + "/" + mouseY);
if (drawingShape) {
drawingShape = false;
ctx.beginPath();
ctx.fillStyle = "#FF0000";
ctx.rect(startX, startY, mouseX - startX, mouseY - startY);
ctx.fill();
} else {
drawingShape = true;
startX = mouseX;
startY = mouseY;
}
}
$("#canvas").mousedown(function (e) {
setMousePosition(e);
});
,하지만 난 그것을 연결하는 방법을 확실 해요 기존 코드.
jsfiddle (제공하려는 사람) : http://jsfiddle.net/bnkT8/ – MiJyn