2.[代码][JavaScript]代码

//通过修改globalCompositeOperation来达到擦除的效果

function tapClip(){

var hastouch = "ontouchstart" in window?true:false,

tapstart = hastouch?"touchstart":"mousedown",

tapmove = hastouch?"touchmove":"mousemove",

tapend = hastouch?"touchend":"mouseup";

canvas.addEventListener(tapstart , function(e){

clearTimeout(timeout)

e.preventDefault();

x1 = hastouch?e.targetTouches[0].pageX:e.clientX-canvas.offsetLeft;

y1 = hastouch?e.targetTouches[0].pageY:e.clientY-canvas.offsetTop;

ctx.lineCap = "round";  //设置线条两端为圆弧

ctx.lineJoin = "round";  //设置线条转折为圆弧

ctx.lineWidth = a*2;

ctx.globalCompositeOperation = "destination-out";

ctx.save();

ctx.beginPath()

ctx.arc(x1,y1,1,0,2*Math.PI);

ctx.fill();

ctx.restore();

canvas.addEventListener(tapmove , tapmoveHandler);

canvas.addEventListener(tapend , function(){

canvas.removeEventListener(tapmove , tapmoveHandler);

timeout = setTimeout(function(){

var imgData = ctx.getImageData(0,0,canvas.width,canvas.height);

var dd = 0;

for(var x=0;x

for(var y=0;y 0){

dd++

}

}

}

if(dd/(imgData.width*imgData.height/900)<0.4){

canvas.className = "noOp";

}

},100)

});

function tapmoveHandler(e){

e.preventDefault()

x2 = hastouch?e.targetTouches[0].pageX:e.clientX-canvas.offsetLeft;

y2 = hastouch?e.targetTouches[0].pageY:e.clientY-canvas.offsetTop;

ctx.save();

ctx.moveTo(x1,y1);

ctx.lineTo(x2,y2);

ctx.stroke();

ctx.restore()

x1 = x2;

y1 = y2;

}

})

}

java做橡皮擦效果_顶风作案,html5 canvas实现橡皮擦功能,擦了就知道有惊喜了...相关推荐

  1. java canvas 动画效果_八大疯狂HTML5 Canvas及WebGL动画效果

    [IT168应用]HTML5.WebGL和JavaScript改变了长久以来的动画制作行业.在过去的几年中,我们想要制作卓越的网页动画只能使用Flash和Java Applet.而现在,使用脚本语言和 ...

  2. canvas水波纹效果_如何使用HTML5 canvas创建水波纹效果

    canvas水波纹效果 Water ripple effect with HTML5. Today we continue JavaScript examples, and our article w ...

  3. html5时间画布走动,javascript+HTML5 canvas绘制时钟功能示例

    本文实例讲述了javascript+HTML5 canvas绘制时钟功能.分享给大家供大家参考,具体如下: 效果如下: 代码: www.jb51.net canvas绘制时钟 div{text-ali ...

  4. java做橡皮擦效果_基于canvas剪辑区域功能实现橡皮擦效果

    这篇文章主要介绍了基于canvas剪辑区域功能实现橡皮擦效果,非常不错,具有参考借鉴价值,需要的朋友可以参考下 这是基础结构 没什么好说的 ? Document *{padding: 0;margin ...

  5. 八爪鱼 是java做的吗_章鱼扫描仪:Java构建工具和恶意软件

    八爪鱼 是java做的吗 Alvaro Munoz最近在GitHub Security Lab网站上发布了" Octopus扫描程序恶意软件:攻击开源供应链 ". 我发现这篇文章很 ...

  6. 毛边效果 html,详解Html5 Canvas画线有毛边解决方法

    Html5 Canvas 所有的画线指令画出来的线条都有毛边(比如 lineTo, arcTo,strokeRect),这是因为在Canvas中整数坐标值对应的位置恰巧是屏幕象素点中间的夹缝,那么当按 ...

  7. html5在线考试倒计时,html5 canvas 实现倒计时 功能

    function showTime(a) { var b = { id: "showtime", //canvasid x: 60, //中心点坐标 X轴; y: 60, //中心 ...

  8. java做橡皮擦效果_用HTML5 实现橡皮擦的涂抹效果的教程

    最近项目刚好用到这种效果,也就是有点像刮刮卡一样,在移动设备上,把某张图片刮掉显示出另一张图片.效果图如下: DEMO请戳右:DEMO 这种在网上还是挺常见的,本来就想直接网上找个demo套用下他的方 ...

  9. h5 vr效果_浅谈html5在vr中的应用

    使用过HTML5制作动画过程的开发者都知道,HTML5页面给人一种逼真的感觉,同时HTML也是可以制作VR页面,但是需要你熟练HTML5与JavaScript开发过程,所以在有必要的情况下,我们可以用 ...

最新文章

  1. Ubuntu14.04 32位上编译VLC2.2.0源码操作步骤
  2. 算法结构2.希尔排序
  3. 未来全球15大热门研究方向出炉!
  4. #Note# 极客与团队-软件工程师的生存秘笈
  5. nginx下部署vue项目
  6. sqlserver启用xm_cmdshell
  7. UVa 489 - Hangman Judge
  8. 慕课乐学python单元测试答案_中国大学慕课第三章单元测试答案_乐学软件工程免费答案...
  9. 我不捐了!日本前首富孙正义欲提供肺炎检测试剂遭网友攻击:被骂到放弃
  10. WP7游戏开发:TweeJump(cocos2d-xna)
  11. java day42【综合练习】
  12. HDU 4539 郑厂长系列故事——排兵布阵 —— 状压DP
  13. 2018acm编程大赛题目c语言,编程竞赛题(超牛题目,留下做研究).doc
  14. js加密php解密---jsencrypt
  15. 【转载】Ajax调用Wcf服务
  16. windows 2003 x86 32位中Oracle 10G数据库使用超过1.7G的sga的方法
  17. 卷积神经网络CNN-全连接层
  18. 声音检索引擎- midomi.com
  19. 软件测试新手入门该学什么?最全整理,照着学就对了
  20. 程序员 业余赚钱的六种途径

热门文章

  1. 关于我在刷题时用OJ判题发现的cout相较于printf严重超时的问题
  2. 第一讲:计算机基本结构
  3. 基于Linux、QT、C++的“别踩白块儿”小游戏
  4. 百分制转五分制(java)
  5. Arduino--4*4矩阵键盘
  6. 使用Pandas读取CSV文件:sep操作
  7. 双开助手多开分身版 v5.1.8
  8. 撰写SCI论文好用的免费工具(下) - 易智编译EaseEditing
  9. vba 批量生成条形图代码
  10. 光伏发电并网matlab/simulink仿真,带PLL锁相环,逆变器控制,最大功率控制MPPT,BOOST升压电路