必威电竞|足球世界杯竞猜平台

swf
來源:互聯網

swf(shock wave flash)是Macromedia(現已被奧多比收購)公司的動畫設計軟件Flash的專用格式,被廣泛應用于網頁設計、動畫制作等領域,swf文件通常也被稱為Flash文件。swf普及程度很高,現在超過99%的網絡使用者都可以讀取swf檔案。這個檔案格式由FutureWave創建,后來伴隨著一個主要的目標受到Macromedia支援:創作小檔案以播放動畫。計劃理念是可以在任何操作系統和瀏覽器中進行,并讓網絡較慢的人也能順利瀏覽。swf可以用Adobe Flash Player打開,瀏覽器必須安裝Adobe Flash Player插件

基本簡介

SWF是一種基于矢量的Flash動畫文件,一般用FLASH軟件創作并生成SWF文件格式,也可以通過相應軟件將pdf等類型轉換為SWF格式。SWF格式文件廣泛用于創建吸引人的應用程序,它們包含豐富的視頻、聲音、圖形和動畫。可以在Flash中創建原始內容或者從其它奧多比應用程序(如P圖或Illustrator)導入它們,快速設計簡單的動畫,以及使用Adobe?AcitonScript?3.0開發高級的交互式項目。設計人員和開發人員可使用它來創建演示文稿、應用程序和其它允許用戶交互的內容。Flash可以包含簡單的動畫、視頻內容、復雜演示文稿和應用程序以及介于它們之間的任何內容。通常,使用Flash創作的各個內容單元稱為應用程序,即使它們可能只是很簡單的動畫。您也可以通過添加圖片、聲音、視頻和特殊效果,構建包含豐富媒體的Flash應用程序。如何播放SWF:可以利用FLASH控件實現播放FLASH的SWF文件,常用的第三方軟件(如:實用Flash播放器、超級Flash播放器、SWF?Flash?Player)可以直接在主流下載站下載后并安裝,即可使用。

文件結構

第1節

swf文件的整體結構是?header?+?body的組成。

文件的開始是一個[文件頭]

它的結構如下:

字節?名稱?說明

1標記

“F”表示非加密格式,”C”表示加密格式

1Signature“W”無特殊意義

1Signature“S”無特殊意義

1Version版本號,它表示對應播放器版本

4FileLength整個文件長度,低位在前

NFrameSize

RECT結構體,表示屏幕大小,具體結構和長度根據數據變化,分析方法另外討論。

2?FrameRate?幀頻,默認為12,高位在前

2?FrameCount

幀數,表明文件根下的幀數,低位在前

以上是swf中,最簡單的一個tag,一個完整的swf文件是由很多獨立的tag組成的。每一個tag都包括一個頭和一個數據體,頭有2種類型,短tag型和長­tag型。

短tag型由2字節構成,前10個刨刀表示tag類型,后6個bit表示tag長度。

長tag型由6byte構成,前10個bit表示tag類型,后6個bit固定為全1,后4個byte代表tag長度。

tag的長度不同于文件頭的長度FileLength,它是除去tag頭后的長度。

(另外)只有非加密的swf文件可以直接用以上的方法解析,加密的文件需要另外增加一步處理。

第2節

前節說明了swf文件是由1個head和1個body構成的。

并且解析了header的結構,和一個tag的header部分的簡單說明。

下面余下的就是swf文件的body了。

整個文件body是由大量的tag組成的,通過分析tag的head部分,可以立刻知道這個tag的類型代碼和長度。

如果你無法識別這個tag的類型,也可以利用tag的長度,直接跳過這個tag。

這種方式保證了版本的兼容性,即使出現了新的tag,老版本的播放器還是能夠解析完整個swf文件而不出現錯誤,大不了就是不能提供新的功能而已。

SWF填充

SWF文件格式支持三個基本類型的填充。

實心填充

SWF一個簡單的RGB或RGBA顏色填充。一個alpha值255指完全不透明的填充。SWF一個alpha值為零意味著完全透明填充。0和255之間的任何數字,將部分透明。

漸變填充

SWF漸變填充可以是線性或徑向漸變。

位圖填充

SWF位圖填充是指一個位圖字符?Id來填充。

格式轉換

SWF文件可以通過pdf等類型的文件轉換而來,事實上我們往往通過將doc、ppt、PDF等類型轉換為SWF類型來實現在線預覽功能。常用的swf格式轉換器有FlashPrinter,swftools等。FlashPrinter采用虛擬打印機的形式,可以直接將doc、ppt等類型的文件轉換為SWF格式。swftools只能將PDF轉換為SWF格式,對于doc等類型的轉換需要先轉變為PDF格式。

參考資料 >

生活家百科家居網