Я пытаюсь нарисовать круг, когда пользователь нажимает и перемещает мышь внутри холста. Если я использую случайные координаты на .arc()
дро, но если я использую мышь координирует он не рисуетContext.Arc не рисование по заданным координатам
Если я пытаюсь это:
JS:
<script>
var clicked = false;
var x = 0;
var y = 0;
var ye = true;
function load(event) {
debugger; var x2 = event.pageX;
var y2 = event.pageY;
if (x2 > 10) {
var num;
}
document.getElementById("<% = values.ClientID%>").innerText = "X= " + x2 + " Y= " + y2;
if (clicked) {
//debugger; document.getElementById("<% = values.ClientID%>").innerText += " Moving!";
debugger; var canvas = document.getElementById("<% = canvasSignature.ClientID%>");
var ctx = canvas.getContext("2d");
ctx.beginPath();
ctx.arc(x, y, 3, 0, 2 * Math.PI);
ctx.stroke();
x = x + 1;
y = y + 1;
}
}
function down() {
debugger; clicked = true;
}
function up() {
debugger;
clicked = false;
}
</script>
ASP:
<body onmouseup ="up()">
<div >
<asp:Label ID ="lblSignature" runat ="server">Sign here</asp:Label>
</div>
<canvas id ="canvasSignature" runat ="server" width="200" height="100" style="border:1px solid #000000;" onmousemove ="load(event);" onmousedown ="down();"></canvas>
<asp:Label ID ="values" runat ="server"></asp:Label>
</body>
Это работает, но если я заменю x и y на x2 и y2 ctx.arc(x2, y2, 3, 0, 2 * Math.PI);
, не рисует. Я тоже не ошибаюсь.
Благодаря
К сожалению, я забыл заменить pageX/Y на clientX/Y. Тот, который я тестирую, - с clientX/Y. –
@ JoséCorretjer-Gómez ah, ну тогда это просто вопрос настройки координат с использованием абсолютной области холста. – K3N
Я сейчас работаю над этим. Извините за поздний ответ: P –