2
respostas

Solucionei da seguinte forma:

<canvas width="600" height="400"></canvas>

<script>
    var tela = document.querySelector('canvas');
    var pincel = tela.getContext('2d');

    var paint = false;

    pincel.fillStyle = 'grey';
    pincel.fillRect(0, 0, 600, 400);

    function paintOn (evento) {

        var x = evento.pageX - tela.offsetLeft;
        var y = evento.pageY - tela.offsetTop;

        if (paint) {
            pincel.fillStyle = 'darkblue';
            pincel.beginPath();
            pincel.arc(x, y, 15, 0, 2 * 3.14);
            pincel.fill();

        }
    }

    function onOff() {
        paint = !paint;
    }

    tela.onmousemove = paintOn;
    tela.onmousedown = onOff;
    tela.onmouseup = onOff;

</script>
2 respostas

Olá Yullie Pires Cruz, que legal esse código.

Legal, cheguei em uma solução bem parecida com essa. Mas a minha tem uma leve diferença na função de habilitar o desenho.

segue:

    var isMouseDown = false;

    function enablePlot(event) {

        isMouseDown = event.type == "mousedown";
    }

   screen.onmousedown = enablePlot;
   screen.onmouseup = enablePlot;