使用PHP的GD庫處理影像時,必須對畫布進行管理。創建畫布就是在記憶體中開闢一塊儲存區域,以後在PHP中對影像的所有操作都是基於這個圖布處理的,圖布就是一個影像資源。在PHP中,可以使用imagecrete()和imageCreateTrueColor()兩個函數來建立指定的畫布。這兩個函數的作用是一致的,都是建立一個指定大小的畫布,他們的原型如下所示:
resource imagecreate(int $x_size,int $y_size) //新建一个基于调色板的图像 resource imagecreatetruecolor(int $x_size,int $y_size) //新建一个真彩色图像
雖然這兩個函數都可以創建一個新的畫布,但各自能夠容納的顏色的總數是不同的。 imageCreate()函數可以建立一個基於普通調色板的圖像,通常支援256色。而imageCreateTrueColor()函數可以建立一個真彩色影像,但函數不能用於GIF檔案格式。當畫佈建立後,傳回一個影像標識符,代表了一幅寬度為$x_size和高度為$y_size的空白影像引用句柄。在後續的繪圖過程中,都需要使用這個資源類型的句柄。例如,可以透過呼叫imagesx()和imagesy()兩個函數來取得影像的大小。程式碼如下所示:
<?php $img = imagecreatetruecolor(300,200);//创建一个300*200的画布 echo imagesx($img);//输出画布宽度300 echo imagesy($img);//输出画布高度200 ?>
另外,畫布的引用句柄如果不再使用,一定要將這個資源銷毀,釋放內存與該圖像的存儲單元。畫布的銷毀過程非常簡單,呼叫imagedestroy()函數就可以實作。其語法格式如下所示:
bool imagedestroy(resource $image) //销毁一图像
如果該方法呼叫成功,就會釋放與參數$image關聯的記憶體。其中參數$image是由影像建立函數傳回的影像識別碼。
更多PHP圖像處理之imagecreate、imagedestroy函數介紹相關文章請關注PHP中文網!