キャンバスを使用してアプリケーションのようなペイントを作成しようとしています。私は自由な手の道具で描くことができるが、私が形を使用しようとするとき私は正しく使用することができない明確な方法を使用する必要があります。キャンバスにマウスで複数の図形を描画する必要がありますが、そうすることはできません。上記のリンクでペイントアプリケーションのようにキャンバスを使用して複数の図形を描画する
<canvas width="800px" height="600px" id="drawing"></canvas>
JS
var isDown;
var start;
var end;
var canvasEl = document.getElementById("drawing");
var draw = canvasEl.getContext("2d");
draw.lineWidth = "2";
draw.strokeStyle = "blue";
var lastWidth = 0;
var lastHeight = 0;
$("#drawing").mousedown(function(e) {
isDown = true;
start = getMousePos(canvasEl, e);
end = getMousePos(canvasEl, e);
lastWidth = 0;
lastHeight = 0;
e.preventDefault();
});
$("#drawing").mouseup(function() {
isDown = false;
});
$("#drawing").mousemove(function(e) {
if (!isDown) return;
var end = getMousePos(canvasEl, e);
var h = end.y - start.y;
var w = end.x - start.x;
draw.clearRect(start.x-5, start.y-5, lastWidth + 6, lastHeight + 6);
draw.beginPath();
draw.rect(start.x, start.y, w, h);
lastWidth = w;
lastHeight = h;
draw.stroke();
draw.closePath();
});
function getMousePos(canvas, evt) {
var rect = canvas.getBoundingClientRect();
return {
x: Math.floor(evt.clientX - rect.left),
y: Math.floor(evt.clientY - rect.top)
};
}
私がしようとしたときに、複数の四角形を描画することができ:ここで
は私が http://jsfiddle.net/6vq64sdh/
HTMLをしようとしています何へのリンクですマウスの右側をドラッグしますが、左側にドラッグするとできません。あなたはどうかしてください
はここにコードを投稿してください、それが何をしようとここに新しい – Parker
その次の質問にはリンクしません..! – Salesman