Javascript HTML5 Canvas实现的一个画板


Posted in Javascript onApril 12, 2020

本文实例为大家分享了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>

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

Javascript 相关文章推荐
js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
Feb 02 Javascript
js禁止页面使用右键(简单示例代码)
Nov 13 Javascript
javascript scrollTop正解使用方法
Nov 14 Javascript
js中事件的处理与浏览器对象示例介绍
Nov 29 Javascript
jQuery中noConflict()用法实例分析
Feb 08 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
Aug 24 Javascript
babel基本使用详解
Feb 17 Javascript
js实现数字递增特效【仿支付宝我的财富】
May 05 Javascript
详解Require.js与Sea.js的区别
Aug 05 Javascript
Vue结合后台导入导出Excel问题详解
Feb 19 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
Apr 08 Javascript
详解从0开始搭建微信小程序(前后端)的全过程
Apr 15 Javascript
bootstrap3 兼容IE8浏览器!
May 02 #Javascript
javascript实现列表切换效果
May 02 #Javascript
基于javascript编写简单日历
May 02 #Javascript
Bootstrap媒体对象的实现
May 01 #Javascript
Bootstrap进度条组件知识详解
May 01 #Javascript
BootStrap glyphicons 字体图标实现方法
May 01 #Javascript
JS实现左右无缝轮播图代码
May 01 #Javascript
You might like
讲解WordPress中用于获取评论模板和搜索表单的PHP函数
2015/12/28 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
2017/07/26 PHP
php定期拉取数据对比方法实例
2019/09/22 PHP
javascript 写类方式之一
2009/07/05 Javascript
Javascript匿名函数的一种应用 代码封装
2010/06/27 Javascript
JavaScript XML和string相互转化实现代码
2011/07/04 Javascript
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
用RadioButten或CheckBox实现div的显示与隐藏
2013/09/21 Javascript
jquery动态添加option示例
2013/12/30 Javascript
通过Jquery的Ajax方法读取将table转换为Json
2014/05/31 Javascript
通过jquery实现页面的动画效果(实例代码)
2016/09/18 Javascript
WEB 前端开发中防治重复提交的实现方法
2016/10/26 Javascript
Node.js如何实现注册邮箱激活功能 (常见)
2017/07/23 Javascript
vue src动态加载请求获取图片的方法
2018/10/17 Javascript
vue基于viewer实现的图片查看器功能
2019/04/12 Javascript
bootstrap-treeview实现多级树形菜单 后台JSON格式如何组织?
2019/07/26 Javascript
Node.js path模块,获取文件后缀名操作
2020/11/07 Javascript
[52:52]完美世界DOTA2联赛PWL S3 LBZS vs access 第一场 12.10
2020/12/13 DOTA
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
2017/12/11 Python
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
2018/04/26 Python
python3解析库pyquery的深入讲解
2018/06/26 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
Kali Linux安装ipython2 和 ipython3的方法
2019/07/11 Python
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
先进个人事迹材料
2014/01/25 职场文书
评析教师个人的自我评价
2014/02/19 职场文书
少年闰土教学反思
2014/02/22 职场文书
报纸媒体创意广告词
2014/03/17 职场文书
优秀广告词大全
2014/03/19 职场文书
电子专业求职信
2014/06/19 职场文书
化学专业大学生职业生涯规划范文
2014/09/13 职场文书
中秋节慰问信
2015/02/15 职场文书
解析CSS 提取图片主题色功能(小技巧)
2021/05/12 HTML / CSS
python中subplot大小的设置步骤
2021/06/28 Python
jdbc中自带MySQL 连接池实践示例
2022/07/23 MySQL