canvas+gif.js打造自己的數字雨頭像
昨天 是1024程式師節,不知道各位看官過的怎麼樣。既然是過節,就要有個過節的樣子,比方說,換個頭像。你看我的頭像牛逼不。今天介紹一個小demo,上傳一個靜態頭像,就能得到一個動態的數位雨頭像。
使用說明
傳一個你喜歡的頭像,最後是正方形的
生成後看字元顏色是不是太詭異,可以改變字元顏色
覺得滿意,右鍵另存為即可
gif.js
今天的主角是gif.js,gif.js是一個在流覽器上依靠H5api就能gif動畫的庫,這裡介紹一下我猜的坑。關於繪製數字雨,
推薦下我的前端群:524262608,不管你是小白還是大牛,小編我都挺歡迎,不定期分享乾貨,包括我自己整理的一份最新的前端資料和零基礎入門教程,歡迎初學和進階中的小夥伴。
gif.js可以很方便的根據canvas動圖得到gif:
/代碼來自官網vargif = new GIF({ workers: 2,//啟用兩個worker。 quality: 10//圖像品質}); //創建一個GIF實例 // 核心方法,向gif中加一幀圖像,參數可以是img/canvas元素,還可以從ctx中複製一幀 gif.addFrame(imageElement); // or a canvas element gif.addFrame(canvasElement, {delay: 200}); //一幀時長是200 // or copy the pixels from a canvas contextgif.addFrame(ctx, {copy: true}); gif.on('finished', function(blob) {//最後生成一個blob物件 window.open(URL.createObjectURL(blob)); }); gif.render(); //開始啟動整體而言,
git.addFrame是添加一幀,要生成會動的gif,要來一個迴圈:
for(...){gif.render(...)}構造函數GIF的選項中,需要workerScript選項,這樣才能實現在worker中渲染圖像,如下所示:
原文:http://www.cnblogs.com/imgss/p/7727132.html