19.2.2 设定图像颜色
函数imagecreatetruecolor()所返回的图像标识符,默认情况下代表一个黑色图像。可以通过函数imagecolorallocate()改变该标识符所代表图像的颜色。如代码19-2所示。
代码19-2 设定图像的颜色19-2.php
01 <?php
02 $width=200;
03 $height=200;
04
05 $img=imagecreatetruecolor($width,$height)or die("不支持GD图像处理");//创建图像
06
07 $bg_color=imagecolorallocate($img,255,0,0);//设置图像标识符所描述图像的颜色
08 imagefill($img,0,0,$bg_color);//改变图像的颜色
09
10 imagepng($img);
11 imagedestroy($img);
12 ?>
【代码解析】这段代码第7行使用函数imagecolorallocate()设置图像标识符所描述图像的颜色为红色,其第1个参数标识图像标识符,第2个参数255是设定红色的数值,第3、4个参数为0,表示绿色蓝色未取其设定值,所以图像颜色设定为红色。
代码第8行使用函数imagefill()为图像$img填充颜色,即把标识符$img所表示图像的背景色填充为红色。代码的最后两行,在上一小节已经加以介绍,这里不再赘述。代码19-2的执行效果如图19-3所示,因为本书是单色印刷,从书中看不出红色效果,读者需要亲自实践一下这个程序。