一個叫 Chris Smoak 的程式員,最近發起一個使用 JavaScript/HTML5 實現 Flash 功能的開源項目,Smokescreen
,
可以將 Flash 動畫轉換為純 HTML5 + JavaScript,以便脫離 Flash 外掛程式,直接在瀏覽器中實現 Flash
風格的動畫。這裡有一些很漂亮的示範
。
關於這項技術,一個叫 Simon Willison 的程式員,在他的部落格
中做了很好
的剖析:
SmokeScreen 完全在瀏覽器中運行,讀取 SWF 二進位檔案,解壓縮(而且使用本地 JavaScript
解壓縮!),從中抽取映像與內嵌的音頻,將它們轉換為 Base 64 編碼的資料,接著,將其中的向量圖形轉換為 SVG 動畫。在 Chrome
中開啟 Web Inspector,在示範進行當中,你會看到 SVG 的即時運行。SmokeScreen 甚至設計了自己的
ActionScript 解譯器。
Smoak 表示,他會很快基於開源協議開放 SmokeScreen
的原始碼,目前,他已經做了幾個非常漂亮的示範,儘管還不夠完美,但已經能看出基於 HTML5 的 Flash
風格的動畫是個什麼樣。這些代碼並不能支援 Flash 視頻,不過,HTML5
已經有了自己的視頻方案
。Smoak 說
,他的初衷是在 iPhone 和 iPad
一類的裝置上實現 Flash 風格的廣告動畫,這項技術最可能應用在廣告中。
經過最佳化,該技術還可以用於遊戲,Willison 表示,新聞網站中的 infographics
也是很好用場,另外,還可以用來渲染卡通風格的動畫,比如示範中的 Strongbad 系列。
不過,人們擔心,SmokeScreen
是否可以很好地應用到那些速度和供電能力都十分有限的行動裝置,同時,我們期待代碼開源後可以得到最佳化。目前,只有那些最新的瀏覽器才可以使用該技術,包
括 Firefox 3.6, Chrome 5, Safari 4 以及移動 Safari。Opera 10.5 系列也接近支援,但不支援
IE8,不過 Smoak 表示,IE9 很有希望。
本文國際來源:webmonkey.com Smokescreen
Project Promises Flash Without the Plug-in
(原文作者: Michael Calore" href="http://www.webmonkey.com/author/snackfight/">Michael Calore
)
中文編譯來源:銳商企業CMS
網站內容管理系統
官方網站