如何在html5的canvas画布中绘制gif动态图片

  我们都知道如何在html5的canvas画布上绘制静态图片(jpeg, png等),直接用canvas中的drawImage方法即可,那么如何绘制动态图片(gif)?

相信大家都知道动态图片之所以动态,是因为它是由很多图片按一定的帧数顺序播放而成的,因此我们是否也可以模拟这样的帧数,每隔一定的时间重新

绘制图片,就能画出动态图片呢?答案当然是YES。下面就是我自己测试的一个例子,代码如下:

 1 <!DOCTYPE HTML>
 2 <html>
 3     <head>
 4         <meta charset="utf-8" />
 5         <title>canvas上画动态图,视频也可以画</title>
 6         
 7         <script type="text/javascript">
 8             window.onload = function() {
 9                 var img = document.getElementById(img1);
10                 var can = document.getElementById(can);
11                 var cxt = can.getContext(2d);
12                 
13                 
14                 setInterval(function (){cxt.drawImage(img, 0, 0);}, 20);
15             }
16         </script>
17     </head>
18     
19     <body>
20         <p>准备绘制的动态图片:</p>
21         <img id="img1" src="ex.gif" alt="你的浏览器不支持img标签"></img>
22         <p>canvas画布上绘制的动态图片:</p>
23         <canvas id="can" width="800px" height="600px" style="background-color: #CCCCCC">你的浏览器不支持canvas标签</canvas>
24     </body>
25 </html>
这是本文中例子使用的动态图片资源ex.gif:

如何在html5的canvas画布中绘制gif动态图片,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。