CANVAS 伸缩动画
来源:互联网 发布:ojbk什么意思网络用语 编辑:程序博客网 时间:2024/05/21 08:50
var canvas = document.getElementById("canvas"),context = canvas.getContext("2d");//Functions.........................................................function drawText() {context.save();context.shadowColor = 'rgba(100,100,150,0.8)';context.shadowOffsetX = 5;context.shadowOffsetY = 5;context.shadowBlur = 10;context.fillStyle = 'cornflowerblue';context.fillText('HTML5', 20, 250);context.strokeStyle = 'yellow';context.strokeText('HTML5', 20, 250);context.restore();}function setClippingRegion(radius) {context.beginPath();context.arc(canvas.width/2, canvas.height/2,radius, 0, Math.PI*2, false);context.clip();}function fillCanvas(color) {context.fillStyle = color;context.fillRect(0, 0, canvas.width, canvas.height);}function endAnimation(loop) {context.fillStyle = color;context.fillRect(0, 0, canvas.width, canvas.height);}function endAnimation(loop){clearInterval(loop);setTimeout(function(e) {context.clearRect(0, 0, canvas.width, canvas.height);drawText();},1000);}function drawAnimationFrame(radius) {setClippingRegion(radius);fillCanvas('lightgray');drawText();}function animate() {var radius = canvas.width/2,loop;loop = window.setInterval(function() {radius -= canvas.width/100;fillCanvas('charcoal');if(radius > 0) {context.save();drawAnimationFrame(radius);context.restore();}else {endAnimation(loop);}},16);};//Event handlers.........................................................canvas.onmousedown = function (e) {animate();};//Initialization.......................................................context.lineWidth = 0.5;context.font = '128pt Comic-sans';drawText();
clip() 方法的用法:将剪辑区域设置为当前剪辑区域与当前路径的交集。在第一次调用clip()方法之前,剪辑区域的大小与整个canvas一致。因为clip()方法会将剪辑区域设置为当前剪辑区域与当前路径的交集,所以这么对该方法的调用一般都是嵌入save()与restore()方法之间的。否则剪辑区域将会越变越小,这通常不是我们想要的结果
0 0
- CANVAS 伸缩动画
- canvas动画
- expandlistview 加伸缩的动画
- jquery实现动画伸缩效果
- html5之canvas动画
- Canvas文字碎片动画
- Canvas 生成交互动画
- canvas动画效果
- IOS Canvas 动画
- canvas做loading动画
- canvas绘制动画效果
- canvas动画实现
- canvas圆周动画
- canvas实现擦除动画
- canvas动画函数requestAnimationFrame
- CSS3和Canvas动画
- canvas粒子动画
- canvas动画包教不包会
- HDOJ Galaxy 5073【2014年鞍山区域赛D题-方差】
- Netty Http server & Client
- 工作流
- IPV6配置
- Find Minimum in Rotated Sorted Array II
- CANVAS 伸缩动画
- Java线程面试题 Top 50
- Android动画效果
- 总结Android Studio导入项目的几种方法
- struts2自定义拦截器类
- 深入解析Oracle学习笔记(第一章)
- VS2010+Qt5.3.1+qt-vs-addin插件
- C++:vector利用swap()函数进行内存释放源码
- HDU - 3338 Kakuro Extension(最大流 行列模型)