PHP GD 套件使用教學

PHP GD 是一個功能強大的圖像處理套件,適合用於動態生成、修改和處理圖像。在這篇教學中,我們將介紹如何使用 GD 套件,並展示其基本功能。
目錄
確認是否已經啟用 GD 套件
開啟 PHP 設定檔php.ini檢查套件是否已經啟用。如果前面有用 ; 註解,就把 ; 去除掉extension=gd
創建繪圖區域
首先要先決定繪製的大小範圍,並調用 imagecreatetruecolor() 創建繪圖區域,也就是我們的圖紙大小
imagecreatetruecolor(width, height)
$width = 400;
$height = 300;
$image = imagecreatetruecolor($width, $height);定義顏色
GD 套件繪圖時,每個需要用的顏色都需要定義。舉例來說,如果我要用到白色、黑色、紅色、藍色,就要先將這幾個顏色用 imagecolorallocate() 定義好,像是我們在畫畫前,先把要用的顏料準備好,後續才可以使用
imagecolorallocate(image, red, green, blue)
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
$red = imagecolorallocate($image, 255, 0, 0);
$blue = imagecolorallocate($image, 0, 0, 255);繪製
GD 提供許多函數來繪製圖形,以下舉幾個例子
填充背景
imagefill(image, x, y, color)
imagefill($image, 0, 0, $white);繪製矩形
左上角座標 (x1, y1),右下角座標 (x2, y2)
imagerectangle(image, x1, y1, x2, y2, color)
imagerectangle($image, 50, 50, 350, 250, $red);繪製橢圓
圓心座標 (x, y)
imageellipse(image, x, y, width, height, color)
imageellipse($image, 200, 150, 200, 100, $blue);寫文字
- 文字左上角為
(x, y) font內建可以使用1,2,3,4,5五種拉丁字母字型
imagestring(image, font, x, y, string, color)
imagestring($image, 5, 200, 150, 'Hello GD!', $black);輸出
將結果輸出為圖片檔,常用的方法有
imagepng(image, path, quality, filters)imagejpeg(image, path, quality)
imagepng($image, './my-pic.webp');釋放資源
圖片資源使用完後,使用 imagedestroy() 釋放資源
imagedestroy($image);