使用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是由圖像創建函數返回的圖像標識符。