《PHP學(xué)習(xí):PHP圖片處理之圖片背景、畫布操作》要點:
本文介紹了PHP學(xué)習(xí):PHP圖片處理之圖片背景、畫布操作,希望對您有用。如果有疑問,可以聯(lián)系我們。
像驗證碼或根據(jù)動態(tài)數(shù)據(jù)生成統(tǒng)計圖標(biāo),以及前面介紹的一些GD庫操作等都屬于動態(tài)繪制圖像.而在web開發(fā)中,也會經(jīng)常去處理服務(wù)器中已存在的圖片.例如,根據(jù)一些需求對圖片進(jìn)行縮放、加水印、裁剪、翻轉(zhuǎn)和旋轉(zhuǎn)等改圖的操作.在web應(yīng)用中,經(jīng)常使用的圖片格式有GIF、JPEG和PNG中的一種或幾種,當(dāng)然GD庫也可以處理其他格式的圖片,但都很少用到.所以安裝GD庫時,至少安裝GIF、JPEG或PNG三種格式中的一種.PHP實戰(zhàn)
在前面介紹的畫布管理中,使用imagecreate()和imageCreateTrueColor()兩個函數(shù)去創(chuàng)建畫布資源.但如果需要對自己已有的圖片進(jìn)行處理,只要將這個圖片作為畫布資源即可,也就是我們所說的創(chuàng)建圖片背景.可以通過下面介紹的幾個函數(shù),打開服務(wù)器或網(wǎng)絡(luò)文件中已經(jīng)存在的GIF、JPEG和PNG圖像,返回一個圖像標(biāo)識符,代表了從給定的文件名取得的圖像作為操作的背景資源.它們的原型如下所示,它們在失敗時都會返回一個空字符串,并且輸出一條錯誤信息.PHP實戰(zhàn)
不管使用哪個函數(shù)創(chuàng)建的圖像資源,用完以后都需要使用imagedestroy()函數(shù)進(jìn)行銷毀.再有就是圖片格式對應(yīng)的問題,任何一種方式打開的圖片資源都可以保留為同一種格式.例如,對于使用imagecreatefromjpeg()函數(shù)創(chuàng)建的圖片資源,可以使用imagepng()函數(shù)以PNG格式將圖像輸出到瀏覽器或文件.當(dāng)然最好是打開的是哪種格式的圖片,就保留成對應(yīng)的圖片格式.如果要做到這一點,我們還需要先認(rèn)識一下getimagesize()函數(shù),通過圖片名稱就可以獲取圖片的類型、寬度和高度等.該函數(shù)的原型如下所示:PHP實戰(zhàn)
如果不能拜訪filename指定的圖像或者其不是有效圖像,該函數(shù)將返回FALSE并產(chǎn)生一條E_WARNING級的錯誤.如果不出錯,getimagesize()返回一個具有四個單元的數(shù)組,索引0包含圖像寬度的像素值,索引1包含圖像高度的索引值,索引2是圖像類型的標(biāo)記:1=GIF,2=JPG,3=PNG,4=SWF等,索引3是文本字符串,內(nèi)容為“height=”yyy”? width=”xxx””,可以直接用于<IMG>標(biāo)記.如下所示:PHP實戰(zhàn)
下面的例子聲明一個image()函數(shù),可以打開GIF、JPG和PNG中任意格式的圖片,并在圖片的中間加上一個字符串后,保留成原來的格式(文字水印).在以后的開發(fā)中,如果需要同樣的操作(打開的是哪種格式的圖片,也保留成對應(yīng)格式的文件),可以參與本例的模式,代碼如下所示:PHP實戰(zhàn)
維易PHP培訓(xùn)學(xué)院每天發(fā)布《PHP學(xué)習(xí):PHP圖片處理之圖片背景、畫布操作》等實戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/13883.html