The GD library is used to draw pictures in PHP. To enable GD, uncomment
Let's have an example:
<?PHP $width=500; $height=300; $im = imagecreatetruecolor($width,$height); $gray = imagecolorallocate($im, 102, 102, 102); $white = imagecolorallocate($im, 255, 255, 255); $black = imagecolorallocate($im, 0, 0, 0); $blue = imagecolorallocate($im, 0, 0, 255); $red = imagecolorallocate($im, 255, 0, 0); $green = imagecolorallocate($im, 0, 255, 0); imagefill($im,0,0,$white); $x_ori = 40; $y_ori = 60; $y_bottom = 60; $xlen = $width - $x_ori - $x_ori * 1.5; $ylen = $height - $y_ori - $y_bottom; imageline($im,$x_ori,$y_ori+$ylen,$x_ori+$xlen,$y_ori+$ylen,$black); //x axis bottom imageline($im,$x_ori,$y_ori,$x_ori,$y_ori + $ylen,$black); //y axis left imageline($im,$x_ori,$y_ori,$x_ori+$xlen,$y_ori,$black); //x axis top imageline($im,$x_ori+$xlen,$y_ori,$x_ori+$xlen,$y_ori+$ylen,$black); //y axis right imagestring($im,2,$x_ori + $xlen/2 -10,$y_ori + $ylen + 20,"width", $black); imagestringup($im,2,$x_ori-20,$y_ori + $ylen/2 + 20,"height", $black); $arry = array(1,50,100,150,200); for ($i=0;$i<5;$i++) { $y = $y_ori + ($arry[$i] - $arry[0]) * $ylen/($arry[4]-$arry[0]); $style=array($white,$white,$gray,$white,$white); imagesetstyle($im,$style); imageline($im,$x_ori+2,$y,$x_ori + $xlen -2,$y,IMG_COLOR_STYLED); imagestring($im,2,$x_ori + $xlen + 5,$y-7,number_format($arry[$i]), $black); } imagejpeg($im,"gd.jpg",65); imagedestroy($im); ?>
The picture looks like follows:
To print the picture on the screen instead of saving it as a file:
<?PHP header('Content-type: image/jpeg'); imagejpeg($im); ?>
Draw line:
<?PHP imageline($im,x1,y1,x2,y2,color); ?>
Draw dashed line:
<?PHP $style=array($white,$white,$gray,$white,$white); //dashed style imagesetstyle($im,$style); imageline($im,$x_ori+2,$y,$x_ori + $xlen -2,$y,IMG_COLOR_STYLED); ?>
Draw rectangle:
<?PHP imagerectangle($im,x1,y1,x2,y2,color); ?>
Draw text:
<?PHP imagestring($im,font,x,y,$string,color); //draw horizontal text imagestringup($im,font,x,y,$string,color); //draw vertical text ?>
Draw circle and ellipse:
<?PHP imageellipse($im,x,y,width,height,color); imagefilledellipse($im,x,y,width,height,color); ?>
Draw polygon:
<?PHP $arr=array(15,10,5,20,30,15); imagepolygon($im,$arr,points,color); ?>