<?Php
header ("Content-type: image/jpeg");
$width=300;$height=300;
$im = @ImageCreate ($width,$height) // added one pixel for border
or die ("Cannot Initialize new GD image stream");
$background_color = ImageColorAllocate ($im, 255, 255, 255);
$filled_color = ImageColorAllocate ($im, 255, 0,0);
imagefilledarc($im,150,150,290,290,0,160,$filled_color,IMG_ARC_PIE);
Imagejpeg($im);
imagedestroy($im); //memory cleared.
?>
imagefilledarc($image,$center_x,$center_y,$width,$height,
$start_angle,$end_angle,$color,$style)
Returns true or false based on success of failure.
$image | Image created using ImageCreate() or imagecreatetruecolor() |
$center_x | x coordinate of center ( X : Horizontal ) |
$center_y | y coordinate of center ( Y : Vertical ) |
$width | Width of the arc |
$height | Height of the arc |
$start_angle | Angle of the start in degree. 3 Oclock position is 0 degree. |
$end_angle | Angle of the end of the arc in degree. |
$color | Color to fill the arc by using imagecolorallocate(). |
$style | Take values : IMG_ARC_PIE,IMG_ARC_CHORD,IMG_ARC_NOFILL,IMG_ARC_EDGED. |
<?Php
header ("Content-type: image/jpeg");
$width=300;$height=300;
$im = @ImageCreate ($width,$height) // added one pixel for border
or die ("Cannot Initialize new GD image stream");
$background_color = ImageColorAllocate ($im, 255, 255, 255);
$text_color = ImageColorAllocate ($im, 255, 0,0);
imagearc($im,150,150,290,290,0,360,$text_color); // outer face
imagearc($im,80,100,50,50,0,360,$text_color); // left eye
imagearc($im,220,100,50,50,0,360,$text_color); // right eye
imagearc($im,150,150,150,150,45,135,$text_color); // mouth
$text_color = ImageColorAllocate ($im, 128, 128,0);
imagefilledarc($im,80,100,20,20,0,360,$text_color,IMG_ARC_PIE); // left eye ball
imagefilledarc($im,220,100,20,20,0,360,$text_color,IMG_ARC_PIE); // right eye ball
Imagejpeg($im);
imagedestroy($im); //memory cleared.
?>
By changing the position of eye ball we can create different type of face ( emoji )
$move_left=0; $move_top=15; | $move_left=15; $move_top=0; |
$move_left=0; // x position is not changed
$move_top=15; // Y position is moved up
imagefilledarc($im,80-$move_left,100-$move_top,20,20,0,360,$text_color,IMG_ARC_PIE); // left eye ball
imagefilledarc($im,220-$move_left,100-$move_top,20,20,0,360,$text_color,IMG_ARC_PIE); // right eye ball
Try to create different movement of eye balls and mouth arc representing different face expressions ( emoji )
<?Php
header ("Content-type: image/jpeg");
$width=301;$height=301;
$im = @ImageCreate ($width,$height) // added one pixel for border
or die ("Cannot Initialize new GD image stream");
$gap=20; // change this value to increase the lines
$background_color = ImageColorAllocate ($im, 255, 255, 255);
imagesetthickness($im,1);
$text_color = ImageColorAllocate ($im, 255, 0,0);
for($i=0;$i<=$width;$i +=$gap){
$r=rand(1,255); // random numbers
$g=rand(1,255);
$b=rand(1,255);
$text_color = ImageColorAllocate ($im, $r, $g,$b);
imagefilledarc($im,$width/2,$height/2,($width)-$i,($height)-$i,0,360,$text_color,IMG_ARC_PIE);
}
Imagejpeg ($im);
imagedestroy($im); //memory is removed.
?>
We can keep height and width of the arcs constant and change the starting and ending angles of the arcs. The $gap we will reduce here.
imagefilledarc($im,$width/2,$height/2,$width,$height,$i,$i+$gap,$text_color,IMG_ARC_PIE);
GD functions GD imagearc() GD imagerectangle() imageellipse()