imagecolorallocatealpha

imagecolorallocatealpha() — 為一幅圖像分配顏色和透明度。

語法,參數,返回值,實例,

語法

int imagecolorallocatealpha ( resource $image , int $red , int $green , int $blue , int $alpha )
imagecolorallocatealpha(
GdImage $image,
int $red,
int $green,
int $blue,
int $alpha
): int|false

參數

image
由圖象創建函式(例如imagecreatetruecolor())返回的 GdImage 對象。
red
紅色成分的值。
green
綠色成分的值。
blue
藍色成分的值。
alpha
介於 0 和 127 之間的值。0 表示完全不透明,而 127 表示完全透明。
red、green 和 blue 參數是 0 到 255 之間的整數或 0x00 到 0xFF 之間的十六進制數。
imagecolorallocatealpha() 的行為和 imagecolorallocate() 相同,但多了一個額外的透明度參數 alpha,其值從 0 到 127。0 表示完全不透明,127 表示完全透明。

返回值

如果分配失敗則返回 FALSE。
注意:此函式需要 GD 2.0.1 或更高版本(推薦 2.0.28 及更高版本)。

實例

<?php
$size = 300;
$image = imagecreatetruecolor( $size, $size ); // 用白色背景加黑色框線畫個方框
$back = imagecolorallocate( $image, 255, 255, 255 );
$border = imagecolorallocate( $image, 0, 0, 0 );
imagefilledrectangle( $image, 0, 0, $size - 1, $size - 1, $back );
imagerectangle( $image, 0, 0, $size - 1, $size - 1, $border );
$yellow_x = 100;
$yellow_y = 75;
$red_x = 120;
$red_y = 165;
$blue_x = 187;
$blue_y = 125;
$radius = 150; // 用 alpha 值分配一些顏色
$yellow = imagecolorallocatealpha( $image, 255, 255, 0, 75 );
$red = imagecolorallocatealpha( $image, 255, 0, 0, 75 );
$blue = imagecolorallocatealpha( $image, 0, 0, 255, 75 ); // 畫三個交迭的圓
imagefilledellipse( $image, $yellow_x, $yellow_y, $radius, $radius, $yellow );
imagefilledellipse( $image, $red_x, $red_y, $radius, $radius, $red );
imagefilledellipse( $image, $blue_x, $blue_y, $radius, $radius, $blue ); // 不要忘記輸出正確的 header!
header( 'Content-type: image/png' ); // 最後輸出結果imagepng($image);imagedestroy($image);
?>

熱門詞條

聯絡我們