SWF和Flash簡介
SWF是Macromedia Flash用來在Internet上向用戶傳送圖片、動畫和聲音的文件格式。Flash是你能夠向用戶提供一個豐富的和動態(tài)的界面。大約90%的Web用戶不用安裝瀏覽器 " /> 亚洲精品97久久,av中文一区,亚洲精品日产

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

用Flash圖形化數(shù)據(jù)(一)

by Bryan Mattern  一木 譯

SWF和Flash簡介
    SWF是Macromedia Flash用來在InterNET上向用戶傳送圖片、動畫和聲音的文件格式。Flash是你能夠向用戶提供一個豐富的和動態(tài)的界面。大約90%的Web用戶不用安裝瀏覽器插件就可以瀏覽SWF內(nèi)容,超過2億人下載了Flash播放器。Macromedia在1998年4月公開了SWF規(guī)范。在php4中加入SWF的支持。
    php內(nèi)建的動態(tài)生成圖片的能力是一個吸引我的特征。它可以生成看起來更專業(yè)更讓人舒服的報(bào)表和界面。一開始,我用充斥在網(wǎng)上的各種GD代碼來創(chuàng)建圖片來顯示我的不同項(xiàng)目的數(shù)據(jù)。但我很快就被生成的圖片的不確定搞煩了,決定試試看能不能用矢量圖形來解決問題。我想你也會同意,結(jié)果看起來好多了。如果一個圖片能代表一千個詞,想象一下一幅Flash動畫代表什么?
    我將盡量使這個例子簡單一些,只說說基礎(chǔ)的東西。我的目的只是創(chuàng)建一個容納GD生成的GIF和PNG圖片的Drog in。你可以加入對它的擴(kuò)展和增強(qiáng),比如Flash賴以出名的各種可視效果。例如,你可以制作在載入頁面時的圖形淡入、飛舞,或者動態(tài)的顯示幾片雪花。你的想象力是對php的SWF函數(shù)的唯一限制。
    怎樣取得需要圖形化的數(shù)據(jù)最好留給讀者去練習(xí)。因?yàn)檫@篇文章是關(guān)于動態(tài)創(chuàng)建Flash文件的,我將在例子中使用一個假想的表作為數(shù)據(jù)集來創(chuàng)建它的圖形化視圖。你需要檢查你的數(shù)據(jù),決定采用一種最適合的圖表形式。在多數(shù)情況下,餅圖是一個合適的選擇,這也是我的例子要采用的圖表形式。折線圖、柱狀圖或者面積圖都可以用相似的方式創(chuàng)建。
    在這個例子中,假定我們把一些包裹送到了幾個城市,而我們要看看每個城市收到的包裹所占的比例。我們決定把數(shù)據(jù)存儲在數(shù)據(jù)庫“world”的表“city”中。讓我們先建立這個表,并輸入這個例子需要的數(shù)據(jù)。

#
# Table structure for table 'city'
#

DROP TABLE IF EXISTS city;
CREATE TABLE city (
   city_id int(14) NOT NULL auto_increment,
   city_name varchar(255) NOT NULL,
   city_timestamp timestamp(14),
   PRIMARY KEY (city_id)
);

#
# Dumping data for table 'city'
#

INSERT INTO city VALUES( '1', 'London', '20000917122625');
INSERT INTO city VALUES( '2', 'London', '20000917122626');
INSERT INTO city VALUES( '3', 'London', '20000917122626');
INSERT INTO city VALUES( '4', 'London', '20000917122627');
INSERT INTO city VALUES( '5', 'Paris', '20000917122631');
INSERT INTO city VALUES( '6', 'Paris', '20000917122632');
INSERT INTO city VALUES( '7', 'New York', '20000917122644');
INSERT INTO city VALUES( '8', 'New York', '20000917122645');
INSERT INTO city VALUES( '9', 'New York', '20000917122646');
INSERT INTO city VALUES( '10', 'New York', '20000917122646');
INSERT INTO city VALUES( '11', 'New York', '20000917122647');
INSERT INTO city VALUES( '12', 'Hong Kong', '20000917122654');


配置你的系統(tǒng)以使用SWF
    我用的環(huán)境是RedHat Linux6.2, Apache 1.3.12, php 4.0.2(編譯為Apache模塊)。如果你在Windows中使用php,事情會有些不同。你需要下載或者編譯一個Flash Dll,但是不需要修改代碼。
    php通過Paul Haeberli的libswf模塊來提供創(chuàng)建Shockwave Flash 文件的能力。你需要從http://reality.sgi.com/grafica/flash/下載libswf。然后,你需要使用選項(xiàng)--with-swf[=DIR]來配置php,這里DIR是include和lib目錄所在的目錄。include目錄下必須有swf.h文件,而lib目錄下必須有l(wèi)ibswf.a文件。當(dāng)解壓縮下載的libswf發(fā)布版本的時候,這兩個文件會被解壓縮到同一個目錄。你需要把這兩個文件移到正確的位置。完成后,目錄結(jié)構(gòu)應(yīng)該像下面的樣子:

    /usr/local/swf/
        /include/
            swf.h
        /lib/
            libswf.a
        /fonts
    ...

    為了使SWF函數(shù)能正常工作,你需要復(fù)制/usr/local/swf/fonts/目錄,以便web服務(wù)器能訪問該目錄(對apache和mod_php來說,最好的辦法就是使用絕對路徑,并把以上目錄復(fù)制到apache的文檔根目錄下。)另外,在libswf的發(fā)布版本中有一個很小的c程序,能夠把類型1的字體轉(zhuǎn)換成Flash能用的字體。
    因?yàn)槲覀円獎討B(tài)地創(chuàng)建和寫SWF文件,所以web服務(wù)器需要在存儲文件的目錄有寫權(quán)限。

php技術(shù)用Flash圖形化數(shù)據(jù)(一),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 拉孜县| 巴林右旗| 定日县| 冷水江市| 建平县| 南漳县| 社旗县| 南岸区| 鱼台县| 中西区| 阳谷县| 鹤庆县| 东方市| 南乐县| 河西区| 葫芦岛市| 嵩明县| 垣曲县| 固阳县| 闽清县| 合作市| 兴海县| 普洱| 罗田县| 肇东市| 顺义区| 夏河县| 日照市| 嘉兴市| 田东县| 邯郸市| 沾化县| 昭平县| 肃宁县| 长兴县| 福鼎市| 仙居县| 博野县| 兰西县| 天祝| 贵港市|