中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁 > 技術(shù)文檔 > 網(wǎng)絡(luò)編程 > PHP中創(chuàng)建并處理圖象
學(xué)習(xí)使用PHP數(shù)組 回到列表 如何正確理解PHP的錯誤信息
 PHP中創(chuàng)建并處理圖象

作者:Julie Meloni 時間: 2004-05-31 文檔類型:轉(zhuǎn)載 來自:builder.com

原文地址:http://www.zdnet.com.cn/developer/code/story/0,2000081534,39246703,00.htm

在安裝了一些第三方函數(shù)庫之后,結(jié)合圖形處理技能,你就可以迅速使用PHP創(chuàng)建和處理圖像了。事實上,你也不需要很多幾何學(xué)知識——因為我在中學(xué)的時候這門功課曾經(jīng)不及格而現(xiàn)在卻能使用PHP創(chuàng)建圖像!

在使用基本的圖像創(chuàng)建函數(shù)之前,需要安裝GD庫。要使用JPEG相關(guān)的圖像創(chuàng)建函數(shù)還需要安裝jpeg-6b。在圖像中使用Type 1字體的時候還必須安裝t1lib。asdf

在這里,你還需要對你的系統(tǒng)設(shè)置進行進一步地調(diào)整。首先安裝t1lib并結(jié)束,然后是jpeg-6b。第三步安裝GD函數(shù)庫。確保以上三部分按順序安裝,原因是你需要編譯GD庫才能使用jpeg-6b庫。如果首先安裝jpeg-6b,編譯就會出錯,這會讓你不知所措夠上一段時間。

在三函數(shù)庫之后,重新配置PHP。這是在輕松安裝PHP的DSO版本時的典型方法。然后執(zhí)行make clean,命令,并在當(dāng)前配置提示中加入以下代碼:

--with-gd=[/path/to/gd]

--with-jpeg-dir=[/path/to/jpeg-6b]

--with-t1lib=[/path/to/t1lib]

最后執(zhí)行makemake install完成配置。重新啟動 Apache,并運行phpinfo()函數(shù)以檢查新功能是否正常運行,然后就可以開始了。

取決于安裝的GD庫版本,你可能具有創(chuàng)建GIF或者PNG圖像的能力。關(guān)鍵是如果你已經(jīng)安裝了gd-1.6或者早期版本,則可處理GIF文件,但不能處理PNG文件;如果安裝了gd-1.6或者以后版本,你可以處理PNG文件卻又不能處理GIF文件。

創(chuàng)建一個簡單的圖像需要幾個函數(shù)。我將按步驟演示如下。

輸出包含你所創(chuàng)建圖像MIME類型的文件頭,本例中為PNG。

header ("Content-type: image/png");

使用ImageCreate()創(chuàng)建一變量存放空白圖像。該函數(shù)需要一個圖片像素尺寸。格式為ImageCreate(x_size, y_size),對250*250像素的圖片,如下:

$newImg = ImageCreate(250,250);

由于此時你的圖像還是空白,所以需要用某些色彩填滿它。但首先需要用ImageColorAllocate()函數(shù)按照顏色的RGB值為每種顏色確定名字。函數(shù)的格式為ImageColorAllocate([image], [red], [green], [blue])。如是天藍色,應(yīng)使用:

$skyblue = ImageColorAllocate($newImg,136,193,255);

接著,用ImageFill()函數(shù)為圖像填充以上顏色。實際上ImageFill()函數(shù)有多個版本,如ImageFillRectangle(), ImageFillPolygon()等等。為簡單起見,采用ImageFill()函數(shù)進行顏色填充,格式如下:

ImageFill([image], [start x point], [start y point], [color])

ImageFill($newImg,0,0,$skyblue);

最后,創(chuàng)建最終圖像并破壞圖像流以釋放內(nèi)存并在結(jié)束后整理系統(tǒng):

ImagePNG($newImg);

ImageDestroy($newImg);

你的代碼應(yīng)該看起來像這樣:

<? header ("Content-type: image/png");

$newImg = ImageCreate(250,250);

$skyblue = ImageColorAllocate($newImg,136,193,255);

ImageFill($newImg,0,0,$skyblue);

ImagePNG($newImg);

ImageDestroy($newImg);

?>

如果調(diào)用腳本skyblue.php 并用自己的瀏覽器訪問它,就會看到一個250*250像素的藍色PNG圖像。

還可以用圖像創(chuàng)建函數(shù)處理圖像,如對大圖像創(chuàng)建的縮略圖等。

假設(shè)你打算為某圖片制作一個35*35像素大小的縮略圖。所要做的即創(chuàng)建一個新的35*35像素大小圖像;并產(chǎn)生一個包含原始圖像內(nèi)容的圖像流;然后改變原始圖像的大小,并將其放到新的空白圖像中去。

達到此目的的關(guān)鍵函數(shù)是ImageCopyResized(),,格式如下所示:ImageCopyResized([new image handle],[original image handle],[new image X],[new Image Y],[original image X],[original image Y], [new image X], [new image Y],[original image X],[original image Y]);

注釋在代碼下面:

<? /* 發(fā)送文件頭以使瀏覽器知道文件類型*/

header("Content-type: image/png");

/* 設(shè)置變量保存新圖片長寬*/

$newWidth = 35;

$newHeight = 35;

/* 以給定長和寬創(chuàng)建空白新圖片 */

$newImg = ImageCreate($newWidth,$newHeight);

/* 從原始大圖獲取數(shù)據(jù) */

$origImg = ImageCreateFromPNG("test.png");

/* 復(fù)制更改尺寸后的圖片。使用函數(shù) ImageSX() 及 ImageSY 獲取原始圖片的x及x尺寸 */

ImageCopyResized($newImg,$origImg,0,0,0,0,$newWidth,$newHeight,ImageSX($origImg),ImageSY($origImg));

/* 創(chuàng)建最終圖片并清空內(nèi)存 */

ImagePNG($newImg);

ImageDestroy($newImg); ?>

如果調(diào)用腳本resized.php并使用瀏覽器訪問此文件,可以看到一個35*35像素的縮略PNG圖片。

出處:builder.com
責(zé)任編輯:cjj

◎進入論壇網(wǎng)絡(luò)編程版塊參加討論

作者文章
學(xué)習(xí)使用PHP數(shù)組
PHP中創(chuàng)建并處理圖象
關(guān)鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設(shè)計比賽 網(wǎng)頁制作 web標(biāo)準 用戶體驗 UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點最新 站點最新列表
周大福“敬•自然”設(shè)計大賽開啟
國際體驗設(shè)計大會7月將在京舉行
中國國防科技信息中心標(biāo)志征集
云計算如何讓安全問題可控
云計算是多數(shù)企業(yè)唯一擁抱互聯(lián)網(wǎng)的機會
阿里行云
云手機年終巨獻,送禮標(biāo)配299起
阿里巴巴CTO王堅的"云和互聯(lián)網(wǎng)觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機主題設(shè)計大賽
欄目最新 欄目最新列表
淺談JavaScript編程語言的編碼規(guī)范
如何在illustrator中繪制臺歷
Ps簡單繪制一個可愛的鉛筆圖標(biāo)
數(shù)據(jù)同步算法研究
用ps作簡單的作品展示頁面
CSS定位機制之一:普通流
25個最佳最閃亮的Eclipse開發(fā)項目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule

藍色理想版權(quán)申明:除部分特別聲明不要轉(zhuǎn)載,或者授權(quán)我站獨家播發(fā)的文章外,大家可以自由轉(zhuǎn)載我站點的原創(chuàng)文章,但原作者和來自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來自一節(jié),自行鏈接)。文章版權(quán)歸我站和作者共有。

轉(zhuǎn)載要求:轉(zhuǎn)載之圖片、文件,鏈接請不要盜鏈到本站,且不準打上各自站點的水印,亦不能抹去我站點水印。

特別注意:本站所提供的攝影照片,插畫,設(shè)計作品,如需使用,請與原作者聯(lián)系,版權(quán)歸原作者所有,文章若有侵犯作者版權(quán),請與我們聯(lián)系,我們將立即刪除修改。

您的評論
用戶名:  口令:
說明:輸入正確的用戶名和密碼才能參與評論。如果您不是本站會員,你可以注冊 為本站會員。
注意:文章中的鏈接、內(nèi)容等需要修改的錯誤,請用報告錯誤,以利文檔及時修改。
不評分 1 2 3 4 5
注意:請不要在評論中含與內(nèi)容無關(guān)的廣告鏈接,違者封ID
請您注意:
·不良評論請用報告管理員,以利管理員及時刪除。
·尊重網(wǎng)上道德,遵守中華人民共和國的各項有關(guān)法律法規(guī)
·承擔(dān)一切因您的行為而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
·本站評論管理人員有權(quán)保留或刪除其管轄評論中的任意內(nèi)容
·您在本站發(fā)表的作品,本站有權(quán)在網(wǎng)站內(nèi)轉(zhuǎn)載或引用
·參與本評論即表明您已經(jīng)閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評論文檔 | 報告錯誤  
專業(yè)書推薦 更多內(nèi)容
網(wǎng)站可用性測試及優(yōu)化指南
《寫給大家看的色彩書1》
《跟我去香港》
眾妙之門—網(wǎng)站UI 設(shè)計之道
《Flex 4.0 RIA開發(fā)寶典》
《贏在設(shè)計》
犀利開發(fā)—jQuery內(nèi)核詳解與實踐
作品集 更多內(nèi)容

雜⑦雜⑧ Gold NORMANA V2