Javascript HTML5 Canvas实现的一个画板
来源: 阅读:892 次 日期:2016-07-06 11:03:31
温馨提示: 小编为您整理了“Javascript HTML5 Canvas实现的一个画板”,方便广大网友查阅!

这篇文章主要介绍了Javascript HTML5 Canvas实现的一个画板的相关资料,需要的朋友可以参考下

本文实例为大家分享了HTML5 Canvas实现的一个画板代码,供大家参考,具体内容如下:

<!DOCTYPE html>

<html>

<head>

  <meta charset="utf-8">

  <title>DEMO6:自定义画板</title>

</head>

<body>

<canvas id="canvas" width="600" height="300">

  浏览器不支持canvas  <!-- 如果不支持会显示这段文字 -->

</canvas>

<br/>

<button style="width:80px;background-color:yellow;" onclick='linecolor="yellow";'>YELLOW</button>

<button style="width:80px ;background-color:red;" onclick='linecolor="red";'>RED</button>

<button style="width:80px ;background-color:blue;" onclick='linecolor="blue";'>BLUE</button>

<button style="width:80px ;background-color:green;" onclick='linecolor="green";'>GREEN</button>

<button style="width:80px ;background-color:white;" onclick='linecolor="white";'>WHITE</button>

<button style="width:80px ;background-color:black;" onclick='linecolor="black";'>BLACK</button>

<br/>

<button style="width: 80px;background-color: white;" onclick="linw=4;">4PX</button>

<button style="width: 80px;background-color: white;" onclick="linw=8;">8PX</button>

<button style="width: 80px;background-color: white;" onclick="linw=16;">16PX</button>

<br/>

<button style="width: 80px;background-color: white;" onclick="copyimage();">EXPORT</button>

<br/>

<img src="" id="image_png" width="600px" height="300px">

<br/>

<script type="text/javascript">

  var canvas = document.getElementById('canvas'); //获取标签

  var ctx = canvas.getContext("2d"); 

  var fillStyle = "black";

  ctx.fillRect(0,0,600,300);

  var onoff = false; //按下标记

  var oldx = -10;

  var oldy = -10;

  //设置颜色

  var linecolor = "white";

  var linw = 4;

  canvas.addEventListener("mousemove",draw,true); //鼠标移动事件

  canvas.addEventListener("mousedown",down,false); //鼠标按下事件

  canvas.addEventListener("mouseup",up,false); //鼠标弹起事件

  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"); //将画板保存为图片格式的函数

    document.getElementById("image_png").src = img_png_src;

  }

  </script> 

</body>

</html>

以上就是本文的全部内容,希望对大家的学习有所帮助。

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map