如何在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:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM