Javascript HTML5 Canvas實(shí)現(xiàn)的一個(gè)畫(huà)板

字號(hào):


    這篇文章主要介紹了Javascript HTML5 Canvas實(shí)現(xiàn)的一個(gè)畫(huà)板的相關(guān)資料,需要的朋友可以參考下
    本文實(shí)例為大家分享了HTML5 Canvas實(shí)現(xiàn)的一個(gè)畫(huà)板代碼,供大家參考,具體內(nèi)容如下:
    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8">
      <title>DEMO6:自定義畫(huà)板</title>
    </head>
    <body>
    <canvas id="canvas" width="600" height="300">
      瀏覽器不支持canvas  <!-- 如果不支持會(huì)顯示這段文字 -->
    </canvas>
    <br/>
    <button onclick='linecolor="yellow";'>YELLOW</button>
    <button onclick='linecolor="red";'>RED</button>
    <button onclick='linecolor="blue";'>BLUE</button>
    <button onclick='linecolor="green";'>GREEN</button>
    <button onclick='linecolor="white";'>WHITE</button>
    <button onclick='linecolor="black";'>BLACK</button>
    <br/>
    <button onclick="linw=4;">4PX</button>
    <button onclick="linw=8;">8PX</button>
    <button onclick="linw=16;">16PX</button>
    <br/>
    <button onclick="copyimage();">EXPORT</button>
    <br/>
    <img src="" id="image_png" width="600px" height="300px">
    <br/>
    <script type="text/javascript">
      var canvas = document.getElementById('canvas'); //獲取標(biāo)簽
      var ctx = canvas.getContext("2d"); 
      var fillStyle = "black";
      ctx.fillRect(0,0,600,300);
      var onoff = false; //按下標(biāo)記
      var oldx = -10;
      var oldy = -10;
      //設(shè)置顏色
      var linecolor = "white";
      var linw = 4;
      canvas.addEventListener("mousemove",draw,true); //鼠標(biāo)移動(dòng)事件
      canvas.addEventListener("mousedown",down,false); //鼠標(biāo)按下事件
      canvas.addEventListener("mouseup",up,false); //鼠標(biāo)彈起事件
      function down(event){
        onoff = true;
        oldx = event.pageX - 10;
        oldy = event.pageY - 10;
      }
      function up(){
        onoff = false;
      }
      function draw(event){
        if (onoff==true) {
          var newx = event.pageX - 10;
          var newy = event.pageY - 10
          ctx.beginPath();
          ctx.moveTo(oldx,oldy);
          ctx.lineTo(newx,newy);
          ctx.strokeStyle = linecolor;
          ctx.lineWidth = linw;
          ctx.lineCap = "round";
          ctx.stroke();
          oldx = newx;
          oldy = newy;
        }
      }
      function copyimage(event)
      {
        var img_png_src = canvas.toDataURL("image/png"); //將畫(huà)板保存為圖片格式的函數(shù)
        document.getElementById("image_png").src = img_png_src;
      }
      </script> 
    </body>
    </html>
    以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。