Fanvas一鍵把swf轉(zhuǎn)為html5 canvas動(dòng)畫
Fanvas是一個(gè)把swf轉(zhuǎn)為html5 canvas動(dòng)畫的系統(tǒng),由兩部分組成:Actionscript實(shí)現(xiàn)的解析器、js運(yùn)行庫。
Flash做動(dòng)畫是最成熟最高效的方式,但由于終端基本不支持Flash播放,這給終端的動(dòng)畫制作帶來了不少麻煩。
Fanvas是Flash和Canvas的完美結(jié)合,可以把swf(包括矢量和位圖)完美地轉(zhuǎn)化為canvas動(dòng)畫,讓美術(shù)妹子一次制作,到處運(yùn)行。。。
嘿嘿~~~讓美術(shù)妹子也搭上H5的快車。
技術(shù)難點(diǎn):
-
兼容swf的各種格式,主要是各種矢量命令和多種多樣的圖片格式;
-
實(shí)現(xiàn)高效的html5運(yùn)行庫,自主實(shí)現(xiàn)了位圖緩存、自動(dòng)臟區(qū)識(shí)別、臟區(qū)重繪等技術(shù)。
優(yōu)勢(shì):
能轉(zhuǎn)化swf為H5動(dòng)畫的工具,除了Fanvas還有大名鼎鼎的google和adobe的產(chǎn)品——swiffy和flashcc。 對(duì)比之下,F(xiàn)anvas有如下優(yōu)勢(shì):
-
從swf文件直接轉(zhuǎn)化為Html5動(dòng)畫(google的swiffy和adobe的flashcc都不支持,兩個(gè)產(chǎn)品都需要通過fla源文件處理);
-
精簡(jiǎn)編排的JSON數(shù)據(jù),使swf轉(zhuǎn)化后的js數(shù)據(jù)文件非常小,普遍比flashcc導(dǎo)出的要小20%到50%;
-
精簡(jiǎn)的運(yùn)行庫,混淆后只有35k,gzip后只有10k左右。而swiffy和flashcc的運(yùn)行庫混淆后都超過100K;
-
開源,可供使用者二次開發(fā)(請(qǐng)保留Fanvas字樣或版權(quán)聲明)。
使用方法
只需要一鍵導(dǎo)入swf,轉(zhuǎn)化完成后一鍵導(dǎo)出canvas動(dòng)畫js。
具體請(qǐng)參考bin目錄的《使用說明》
源代碼說明
exporter是as3.0實(shí)現(xiàn)的swf文件解析器,解析后輸出json數(shù)據(jù);
runtime是js運(yùn)行庫,用于解析json數(shù)據(jù),轉(zhuǎn)化為最終canvas動(dòng)畫。
DEMO示例
