(PHP 4 >= 4.0.6, PHP 5, PHP 7)
imagefilledarc — Draw a partial arc and fill it
imagefilledarc ( resource $image , int $cx , int $cy , int $width , int $height , int $start , int $end , int $color , int $style ) : bool
Draws a partial arc centered at the specified coordinate in the given image
.
image
An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().
cx
x-coordinate of the center.
cy
y-coordinate of the center.
width
The arc width.
height
The arc height.
start
The arc start angle, in degrees.
end
The arc end angle, in degrees. 0° is located at the three-o'clock position, and the arc is drawn clockwise.
color
A color identifier created with imagecolorallocate().
style
A bitwise OR of the following possibilities:
IMG_ARC_PIE
IMG_ARC_CHORD
IMG_ARC_NOFILL
IMG_ARC_EDGED
IMG_ARC_PIE
and IMG_ARC_CHORD
are mutually exclusive; IMG_ARC_CHORD
just connects the starting and ending angles with a straight line, while IMG_ARC_PIE
produces a rounded edge. IMG_ARC_NOFILL
indicates that the arc or chord should be outlined, not filled. IMG_ARC_EDGED
, used together with IMG_ARC_NOFILL
, indicates that the beginning and ending angles should be connected to the center - this is a good way to outline (rather than fill) a 'pie slice'. Returns true
on success or false
on failure.
Example #1 Creating a 3D looking pie
<?php // create image $image = imagecreatetruecolor(100, 100); // allocate some colors $white = imagecolorallocate($image, 0xFF, 0xFF, 0xFF); $gray = imagecolorallocate($image, 0xC0, 0xC0, 0xC0); $darkgray = imagecolorallocate($image, 0x90, 0x90, 0x90); $navy = imagecolorallocate($image, 0x00, 0x00, 0x80); $darknavy = imagecolorallocate($image, 0x00, 0x00, 0x50); $red = imagecolorallocate($image, 0xFF, 0x00, 0x00); $darkred = imagecolorallocate($image, 0x90, 0x00, 0x00); // make the 3D effect for ($i = 60; $i > 50; $i--) { imagefilledarc($image, 50, $i, 100, 50, 0, 45, $darknavy, IMG_ARC_PIE); imagefilledarc($image, 50, $i, 100, 50, 45, 75 , $darkgray, IMG_ARC_PIE); imagefilledarc($image, 50, $i, 100, 50, 75, 360 , $darkred, IMG_ARC_PIE); } imagefilledarc($image, 50, 50, 100, 50, 0, 45, $navy, IMG_ARC_PIE); imagefilledarc($image, 50, 50, 100, 50, 45, 75 , $gray, IMG_ARC_PIE); imagefilledarc($image, 50, 50, 100, 50, 75, 360 , $red, IMG_ARC_PIE); // flush image header('Content-type: image/png'); imagepng($image); imagedestroy($image); ?>
The above example will output something similar to:
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.imagefilledarc.php