成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

說說PHP作圖(一)

瀏覽:3日期:2024-02-20 14:38:35

實在不敢說是在這里“講”GD庫,因為我用GD也才一兩次而已,絕大多數的函數還沒有接觸到。可是三斑竹小刁熱情地向我約稿,我只好硬著頭皮寫一點自己的心得。希望能夠起到拋磚引玉的效果。

其實,我們在web頁面里實現“圖”的效果不一定非用GD不可,比較容易解決的是柱狀圖——用HTML就可以解決。比如:

<? $b = array(150,110,125,180,160,175,230,220); ?><html><head><meta http-equiv='Content-Type' content='text/html; charset=gb2312'><title></title><style><!--td{ font-size:9pt }--></style></head><body><table border=0> <tr valign='bottom'>/* (1) */ <?for($i=0;$i<8;$i++) { ?><td align='center'> <table border=0>/* (2) */ <tr> <td bgcolor='#3F7F9F' width='40'></td> /* (3) */ </tr> </table><br><font color='#3F7F9F'><?echo $b[$i];?></font> /* (4) */ </td><? } ?> </tr></table></body></html>

<? $b = array(150,110,125,180,160,175,230,220); ?> 是一組數據,數據從哪里來,是無關大局的,就看你的需要了;代碼中需要說兩句的地方我都加了注釋,現在一一來說明。

(1) 這里要注意的是 valign='bottom',是為了讓單元格的內容底部對齊。為什么加在<tr>里 呢?可以讓表格里這一行的內容都遵循這一對齊方式,不必在每一個<td>里指定,這樣可 以使PHP執行結果的HTML頁的原代碼節約好幾十個字節吶!節約瀏覽者的寶貴時間。 (2) 注意,最關鍵的東西在這里!<table height='xxx'>,我們就是利用table的height屬性來 實現不同高度的“柱”的。我這里為了讓大家看得清楚,原始數據沒有經過按比例的縮放, 如果你的數據特別大,或者特別小,都不適宜直接賦給table的height屬性,而應該根據情 況按適當比例縮放這些數據。比如你估計你的這組數據的每一個數字都會在3000~8000之間, 可以考慮將他們縮小25倍,即 (3) 提一下這一行里的 bgcolor='#xxxxxx',這是柱體的顏色(RGB)。其實,真正的柱狀圖應該 每一個柱體用一種顏色,這里為了代碼盡量簡單,我用了這個for循環,因此也就沒辦法給 每一個柱體指定一種顏色。——其實也是有辦法的,我只是實在沒有必要為了這個例子再寫 一個抽取顏色的函數來把初學者搞暈。所以,那一部分由你自己去完善吧。 (4) 在這里以與柱體相同的顏色顯示真實的數據。當然,你也可以選擇把這個數字放在柱體的頂 上,可能更專業一些。然而我本人還是習慣于把它放在下面。 借助于HTML的table,我們可以構造出各種柱狀圖,這個例子講的是用bgcolor來顯示色塊,除此以外,還可以用 background='(圖片)' ,圖片是帶花紋的,于是柱狀圖的柱體就有了花紋。而你把真實的數據用反差很大的顏色顯示在上面注釋(3)所示的那個<td>里,也是很好的效果。

前面是回避GD的一個有效的方法,但要做復雜的圖形,就非用GD不可了。

sadly 的PHP4中文手冊里,說GD函數庫里有44個函數,但我看最新版的英文PHP4手冊里,GD的函數已經有80余個!由于筆者英文比較差,讀英文的手冊只能連蒙帶猜,所以不能確定新的GD庫是否重新支持GIF了?不管怎樣,我認為,既然我們在使用完全免費的PHP,何必要“冒險”去用有版權的GIF?何不免費到底,用PNG呢?只要你不需用動畫,PNG同樣可以做出象GIF一樣小的文件!

下面我就結合一段程序,一句代碼一句代碼地說說常用的這些GD函數。 從開頭說起吧。

<? Header('Content-type: image/png'); // 這是發送一個HTTP頭,告訴瀏覽器:“你聽著,這是一個圖象,可別當成文字來顯示呀!” // 由于我個人的喜好,用了PNG,當然你也可以用 Header('Content-type: image/gif'); // 或者 Header('Content-type: image/jpeg'); $im = ImageCreate (50, 100); // 創建圖象。注意,圖象在創建的時候還沒有被指定圖象格式。 // ImageCreate函數,兩個參數,無庸質疑,這是創建的圖象的寬度和高度。 // 它的返回值是一個int數值,這個數值相當重要,你繼續繪制這個圖象、 // 直到你輸出這個圖象之前,無處不用到這個數值,我們暫且稱之為圖象的ID。 // 因為使用的頻率相當高,所以,我們把它賦給一個名字比較短的變量。 // 現在我們先畫一條線吧。畫線的函數是這樣的: // imageline (int im, int x1, int y1, int x2, int y2, int col); // 第一個參數im,就是圖象的ID,后面的 x1,y1,x2,y2,不用說了, // 是起點(x1,y1) 終點(x2,y2)的坐標呀!(圖象的左上角坐標是 (0,0) ) // 最后一個參數是什么呀?是顏色!GD要求針對圖象定義顏色,用定義的這些顏色來作圖。 // 為什么要針對圖象定義顏色?我猜測,是為了GIF、PNG等圖象用之做“調色板”的。 // 這牽扯到圖象本身的知識,這里不贅述了。 // 所以,畫線之前,我們還要先定義顏色(真麻煩)。

// $col_red = ImageColorAllocate($im, 255,192,192); // 這個函數四個參數,第一個$im……還用得著我每次都說嘛?下次就不說啦! // 后面三個參數就是要定義的顏色的紅(R)、綠(G)、藍(B)的分量,0~255之間。 // 這又牽扯到物理—光學的知識了。紅、綠、藍三原色光分量的不同, // 產生了千變萬化的色彩。上面我定義的這個顏色,紅255,綠192,藍192。 // 如果沒有搞錯,這是一個較亮的紅色。等一會兒我們來畫一條線試試看。 // 為什么要等一會兒呢?因為一幅圖只有一種顏色的話,是什么也看不出來的! // 我們把背景搞成黑的先! // 雖然手冊上沒有明確表示,但是我發現最先定義的顏色將默認被作為背景。 $col_black = ImageColorAllocate($im, 0,0,0); // 定義了一種顏色,紅光、綠光、藍光都沒有,自然黑咕隆咚——黑色。; // 然后再定義畫線用的顏色: $col_red = ImageColorAllocate($im, 255,192,192); // 現在可以開始畫紅線了: imageline ($im, 10, 20, 45, 85, $col_red); // 別急,這句完了以后你還看不到圖象。 ImagePNG($im); // 這一句就輸出圖象了,ImagePNG()輸出png圖象,ImageJPEG輸出jpeg圖象, // ImageGIF輸出gif圖象…… // 不要忘記這里有一個參數,如果在屏幕顯示,而不是保存為文件, // 則省略這個參數——保存的文件名。如果這里是要把它保存為文件, // 就應該這樣寫:ImagePNG($im,'test.png'); // 如果不指定路徑,這個文件保存在你的web當前目錄里。 // 如果是JPEG,則再多一個參數,是JPEG質量(0~100)。// 如果要在屏幕顯示,則 ImageJPEG($im,'',80); // 如果要保存,則 ImageJPEG($im,'test.jpg',80); // 注意,如果你要把這個圖象保存為文件, // 就不能使用 Header('Content-type: image/png'); 傳送意味著圖象的HTTP頭, // 因為一旦這樣,就表示你將輸出圖象。 ImageDestroy($im); // 毀掉內存里的圖象,以釋放內存空間。 // 這樣就好了:一幅最簡單的GD作的圖作成了。 // 通過測試發現,生成這幅圖象文件,用PNG格式只有131字節, // 而用JPEG格式,即便是用最差的質量(0),也需要855字節,圖象質量糟糕得沒法看。 // 而最高的JPEG質量,則需要2360字節,色彩卻仍不如用PNG時的鮮艷。 // 由此可見,對于這種顏色數目少的圖象,用PNG比JPEG劃算得多。?> 這一次先說到這里,我會爭取盡快繼續寫下去。

標簽: PHP
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
在线观看不卡一区| 欧美精品一区二区视频| 国产99久久久国产精品免费看| 羞羞答答国产精品www一本| 国产精品麻豆视频| 99re视频这里只有精品| 欧美一级高清片| 日本欧美加勒比视频| 制服诱惑一区二区| 国产日韩精品视频一区| 成人av动漫在线| 日韩精品一区二区三区蜜臀| 国产剧情在线观看一区二区| 在线观看日韩毛片| aⅴ色国产欧美| 国产精品久久久久久久久免费丝袜| caoporm超碰国产精品| 欧美肥妇毛茸茸| 国产一区二区在线观看免费| 韩国一区二区三区美女美女秀| 日韩欧美高清在线| 国产成人精品网址| 69av一区二区三区| 久久99精品久久只有精品| 久久精品欧美| 午夜欧美视频在线观看| 国产精品欧美日韩一区| 亚洲欧美在线另类| 伊伊综合在线| 亚洲精品老司机| 亚洲欧美日韩一区在线观看| 最新国产成人在线观看| 亚洲影院免费| 色狠狠综合天天综合综合| 午夜精品福利在线| 亚洲一区二区毛片| 国产不卡高清在线观看视频| 日韩精品一区二区在线| 99久久精品国产毛片| 国产婷婷色一区二区三区| av在线播放一区二区三区| 国产色综合久久| 亚洲经典在线| 精品成人佐山爱一区二区| 99视频精品在线| 国产精品每日更新| av成人激情| 亚欧色一区w666天堂| 性久久久久久| 麻豆精品国产传媒mv男同| 欧美日韩日本视频| 丁香天五香天堂综合| 精品成人免费观看| 激情成人亚洲| 午夜av电影一区| 欧美精品福利| 亚洲美女免费在线| 欧美中文字幕| 国产一区二区三区四区五区美女| 精品国免费一区二区三区| 91麻豆精品在线观看| 亚洲欧美电影一区二区| 一本久道中文字幕精品亚洲嫩| 九色综合国产一区二区三区| 91精品国产麻豆国产自产在线| 成人免费电影视频| 国产精品视频麻豆| 国产欧美在线| 毛片av一区二区三区| 欧美变态tickle挠乳网站| av激情综合网| 亚洲欧美日韩系列| 91久久一区二区| 成人综合婷婷国产精品久久| 久久综合999| 99re热精品| 日精品一区二区三区| 欧美日韩另类国产亚洲欧美一级| 国产成人精品免费在线| 久久精品一区二区三区不卡 | 久久综合色鬼综合色| 亚洲视频狠狠| 日本视频一区二区| 久久嫩草精品久久久精品| 亚洲女同同性videoxma| 一区二区三区四区激情| 91精品国产福利在线观看| 亚洲精选国产| 国产98色在线|日韩| 成人免费在线视频| 国产精品私人影院| 午夜综合激情| 成人免费在线观看入口| 国产美女在线精品免费观看| 麻豆精品一区二区av白丝在线| 国产精品区一区二区三区| 欧美日本三区| 国内精品一区二区| 日韩有码一区二区三区| 亚洲精品在线观看网站| 国产日韩精品久久| 国产成人精品1024| 一区二区三区在线免费观看| 欧美一区二区视频免费观看| 亚洲激情女人| 国产福利一区二区三区在线视频| 中文字幕一区二区三中文字幕| 欧美色综合影院| 亚洲性感美女99在线| 极品美女销魂一区二区三区免费 | 9191久久久久久久久久久| 亚洲视频精品| 国产盗摄一区二区| 亚洲一区二区三区自拍| 欧美成人女星排名| 久久精品电影| 欧美精品亚洲| 国精产品一区一区三区mba桃花| 亚洲天堂成人在线观看| 欧美一区二区三区思思人| 一区二区日韩免费看| 波多野结衣91| 免费不卡在线观看| 亚洲手机成人高清视频| 欧美一区二区三区成人| 国产日韩免费| 99精品视频在线观看| 日韩 欧美一区二区三区| 国产精品国产三级国产aⅴ无密码| 欧美在线日韩精品| 国产一区二区三区综合| 亚洲成人1区2区| 国产精品久久久久久久久搜平片| 日韩视频免费直播| 色噜噜狠狠成人网p站| 亚洲精品一区二区三区av| 99re这里只有精品首页| 国产一区二区免费在线| 亚洲国产精品天堂| 国模精品娜娜一二三区| 99riav一区二区三区| 久久国产成人午夜av影院| 亚洲男人天堂一区| 国产午夜精品久久| 欧美成人精品福利| 欧美日韩精品一区二区天天拍小说| 国产精品一国产精品k频道56| 欧美精品偷拍| av色综合久久天堂av综合| 国产在线不卡一区| 日韩黄色一级片| 夜夜亚洲天天久久| 国产精品的网站| 久久美女艺术照精彩视频福利播放| 欧美猛男超大videosgay| 校园春色综合网| 国产日韩三区| 亚洲毛片在线| 日韩天天综合| 亚洲国产精选| 伊人成人在线视频| 欧美久久九九| 成人动漫av在线| 国产一区二区毛片| 看电视剧不卡顿的网站| 亚洲欧洲日韩av| 含羞草久久爱69一区| 成人免费毛片aaaaa**| 亚洲在线中文字幕| 国产精品美女久久福利网站| 久久毛片高清国产| 欧美一区二区国产| 欧美电影影音先锋| 欧美日韩一区二区不卡| 久久青青草原一区二区| 国产亚洲一区二区三区在线播放| 欧美日韩亚洲一区二区三区在线 | 亚洲看片一区| 亚洲美女网站| 一区二区久久| 国产精品免费在线| 美女日韩在线中文字幕| 亚洲电影一区二区三区| 亚洲一二三区在线观看| 亚洲妇熟xx妇色黄| 亚洲福利一区二区三区| 亚洲国产精品精华液网站| 亚洲午夜久久久久中文字幕久| 亚洲一区二区三区在线| 亚洲高清不卡在线观看| 五月激情综合网| 香蕉加勒比综合久久| 天堂在线亚洲视频| 捆绑调教美女网站视频一区| 国产一二三精品| 成人网页在线观看| 91在线视频官网| 欧美日韩视频| 亚洲欧洲日夜超级视频| 亚洲美女毛片|