PHP imagecolorallocate()和imagecolorallocatealpha():定義顏色

2020-07-16 10:05:25
在使用 PHP 動態輸出漂亮影象的同時,也離不開顏色的設定,就像畫畫時需要使用調色盤一樣。在 PHP 中提供了 imagecolorallocate() 和 imagecolorallocatealpha() 兩個函數來設定影象的顏色,下面就來詳細介紹一下。

1、imagecolorallocate() 函數

imagecolorallocate() 函數可以為一個影象資源分配顏色,如果在影象中需要設定多種顏色,只要多次呼叫該函數即可。函數的語法格式如下所示:

imagecolorallocate(resource $image, int $red, int $green, int $blue)

其中,$image 為要設定顏色的影象資源,imagecolorallocate() 函數會返回一個識別符號,代表了由給定的 RGB 成分組成的顏色;$red,$green 和 $blue 分別是所需要的顏色的紅,綠,藍成分,取值範圍是 0 到 255 的整數或者十六進位制的 0x00 到 0xFF。

提示:如果是使用 imagecreate() 函數建立的影象資源,在第一次呼叫 imagecolorallocate() 函數時會預設為其填充背景色。

【範例】使用 imagecolorallocate() 函數為影象設定顏色。
<?php
    $image = imagecreate(100, 100);
    $blue = imagecolorallocate($image, 0, 0, 255);
    $red = imagecolorallocate($image, 255, 0, 0);
    $green = imagecolorallocate($image, 0, 255, 0);
    header('Content-type:image/jpeg');
    imagejpeg($image);
    imagedestroy($image);
?>
執行結果如下圖所示:

imagecolorallocate() 函數示例程序運行結果
圖:imagecolorallocate() 函數範例程式執行結果