Код: Выделить всё
header('Content-type: image/png');
$width=400;
$height=20;
// сверху, к примеру, будет чёрный
$redTop = 0;
$greenTop = 0;
$blueTop = 0;
// внизу, к примеру, будет белый
$redBottom = 255;
$greenBottom = 255;
$blueBottom = 255;
// $width, $height - соответственно ширина и высота картинки
$im = imagecreatetruecolor ($width, $height);
for ($y = 0; $y < $height; $y++)
{
$red = round ($redTop + ($redBottom - $redTop) * $y / ($height - 1));
$green = round ($greenTop + ($greenBottom - $greenTop) * $y / ($height - 1));
$blue = round ($blueTop + ($blueBottom - $blueTop) * $y / ($height - 1));
$color = imagecolorallocate ($im, $red, $green, $blue);
imageline ($im, 0, $y, $width - 1, $y, $color);
}
imagepng($im);
ImageDestroy ($im);
Как заставить его понимать цвета типа 0x000000?
Зделал так
Код: Выделить всё
$image_width = 400;
$image_height = 20;
# Makes a picture and sets size in pixels
$image = imagecreatetruecolor($image_width, $image_height);
#Horizontal gradient
for($i=0; $i<$image_height; $i++)
{
$color = floor($i * 220 / $image_height);
$color = ImageColorAllocate($image, 0xFF0000,$color,0x8A2BE2);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');
ImagePNG($image);
imagedestroy($image);