说说PHP作图(三)
上次说到用GD作各种几何图形,以及填充颜色。其中故意把这样一个较复杂的情况留到后面,这就是任意多边形和任意多边形的填充颜色。
<?
Header("Content-type: image/png");
$im = ImageCreate (200, 100);
$col_blk = ImageColorAllocate($im, 0,0,0);
$col_grn = ImageColorAllocate($im, 0,255,0);
$parray = array(40,10,60,10,70,20,60,50,40,50,30,20);
// 定义一个数组,12个成员是6个点的横纵坐标。
ImagePolygon($im,$parray,6,$col_grn);
// 这就是绘制任意多边形的函数,$parray是刚才定义的数组,
// 6表示六个点。注意六个点连成的是六边形。
// 不必人为地为了闭合图形而在最后增加一个与第一点相同的点。
ImagePNG($im);
ImageDestroy($im);
?>
你应该已经想到了,任意多边形填充颜色的函数:
<?
Header("Content-type: image/png");
$im = ImageCreate (200, 100);
$col_blk = ImageColorAllocate($im, 0,0,0);
$col_orn = ImageColorAllocate($im, 255,192,0);
$col_yel = ImageColorAllocate($im, 255,255,0);
$col_red = ImageColorAllocate($im, 255,0,0);
$col_grn = ImageColorAllocate($im, 0,255,0);
$col_blu = ImageColorAllocate($im, 0,0,255);
$parray = array(40,10,60,10,70,20,60,50,40,50,30,20);
ImageFilledPolygon($im,$parray,6,$col_grn);
ImagePNG($im);
补充:Php教程,图像处理