HTML5 canvas画图并保存成图片的jcanvas插件


Posted in HTML / CSS onJanuary 17, 2014

使用了jcanvas插件。

复制代码
代码如下:

<head>
<script src='jquery-1.9.1.js'></script>
<script src='jcanvas.min.js'></script>
<!--<script src='js/jquery.mobile-1.2.0.min.js'></script> -->
<script>
var maxX=-1;
var maxY=-1;
var minX=99999;
var minY=99999;
function checkData(event){
var x=event.pageX-$('canvas').offset().left;
var y=event.pageY-$('canvas').offset().top;
if(x>maxX){
maxX=x;
}else if(x<minX){
minX=x;
}
if(y>maxY){
maxY=y;
}else if(y<minY){
minY=y;
}
}
$(function(){
var obj=$('canvas');
var temp_e;
var temp_draw=false;

obj.on({
mousedown:function(e){
temp_e=e;
temp_draw=true;
checkData(e);
},
mousemove:function(e){
if(temp_draw){
obj.drawLine({
strokeStyle: '#000',
strokeWidth: 3,
x1: temp_e.pageX-$('canvas').offset().left, y1: temp_e.pageY-$('canvas').offset().top,
x2: e.pageX-$('canvas').offset().left, y2: e.pageY-$('canvas').offset().top,
});
}
temp_e=e;
checkData(e);
},
mouseup:function(e){
temp_e=null;
temp_draw=false;
checkData(e);
},
mouseout:function(){
temp_e=null;
temp_draw=false;
}
});
$("#clean").on("click",function(){
maxX=-1;
maxY=-1;
minX=99999;
minY=99999;
obj.clearCanvas();
});
$("#save").on("click",function(){
var image=obj.getCanvasImage("png");
alert(image);
});

});
</script>
</head>
<body>
<input type="button" id="save" value="保存" />
<input type="button" id="clean" value="清除" />
<br/>
<canvas width='320' height='480' style="background:#f00"></canvas>
<div id="points"></div>
</body>

HTML / CSS 相关文章推荐
利用CSS3实现炫酷的飞机起飞动画
Sep 17 HTML / CSS
CSS3实现精美横向滚动菜单按钮
Apr 14 HTML / CSS
CSS3实现千变万化的文字阴影text-shadow效果设计
Apr 26 HTML / CSS
通过一张图教会你CSS3倒影的实现
Sep 26 HTML / CSS
CSS3 border-radius圆角的实现方法及用法详解
Sep 14 HTML / CSS
浅谈HTML5 defer和async的区别
Jun 07 HTML / CSS
Html5实现iPhone开机界面示例代码
Jun 30 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
May 03 HTML / CSS
使用canvas压缩图片上传的方法示例
Feb 07 HTML / CSS
总结html5自定义属性有哪些
Apr 01 HTML / CSS
CSS3 制作的彩虹按钮样式
Apr 11 HTML / CSS
纯CSS如何禁止用户复制网页的内容
Nov 01 HTML / CSS
Html5无刷新修改browser Url的方法
Jan 15 #HTML / CSS
html特殊符号示例 html特殊字符编码对照表
Jan 14 #HTML / CSS
html5使用canvas实现跟随光标跳动的火焰效果
Jan 07 #HTML / CSS
编写html5时调试发现脚本php等网页js、css等失效
Dec 31 #HTML / CSS
html5基础标签(html5视频标签 html5新标签用法)
Dec 30 #HTML / CSS
html5的canvas实现3d雪花飘舞效果
Dec 27 #HTML / CSS
html5 canvas实现圆形时钟代码分享
Dec 25 #HTML / CSS
You might like
php GD绘制24小时柱状图
2008/06/28 PHP
PHP中include和require的区别实例分析
2017/05/07 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
通过event对象的fromElement属性解决热区设置主实体的一个bug
2008/12/22 Javascript
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
javascript dom 操作详解 js加强
2009/07/13 Javascript
javascript getElementsByClassName 和js取地址栏参数
2010/01/02 Javascript
js实现正方形颜色从下往上升的效果
2014/08/04 Javascript
关于延迟加载JavaScript
2015/05/05 Javascript
jQuery实现邮箱下拉列表自动补全功能
2016/09/08 Javascript
原生JS实现ajax与ajax的跨域请求实例
2017/12/01 Javascript
微信小程序实现点击按钮移动view标签的位置功能示例【附demo源码下载】
2017/12/06 Javascript
JS实现的文件拖拽上传功能示例
2018/05/21 Javascript
一些手写JavaScript常用的函数汇总
2019/04/16 Javascript
在Vue中实现随hash改变响应菜单高亮
2020/03/09 Javascript
解决vue项目中某一页面不想引用公共组件app.vue的问题
2020/08/14 Javascript
[45:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第二场 6.2
2018/06/04 DOTA
[45:50]完美世界DOTA2联赛PWL S3 CPG vs Forest 第二场 12.16
2020/12/17 DOTA
python 实现归并排序算法
2012/06/05 Python
python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
2014/08/25 Python
python实现ipsec开权限实例
2014/11/11 Python
Python实现一个简单的验证码程序
2017/11/03 Python
python实现决策树分类算法
2017/12/21 Python
python如何重载模块实例解析
2018/01/25 Python
对Python random模块打乱数组顺序的实例讲解
2018/11/08 Python
在Python中使用MongoEngine操作数据库教程实例
2019/12/03 Python
pycharm解决关闭flask后依旧可以访问服务的问题
2020/04/03 Python
django自带的权限管理Permission用法说明
2020/05/13 Python
HTML5 body设置全屏背景图片的示例代码
2020/12/08 HTML / CSS
奇怪的鱼:Weird Fish
2018/03/18 全球购物
建筑毕业生自我鉴定
2013/10/18 职场文书
幼儿园亲子活动总结
2014/04/26 职场文书
党员批评与自我批评发言
2014/10/02 职场文书
店长岗位职责
2015/02/11 职场文书
Pandas加速代码之避免使用for循环
2021/05/30 Python
小程序与后端Java接口交互实现HelloWorld入门
2021/07/09 Java/Android