|
imagefilledarc (PHP 4 >= 4.0.6, PHP 5) imagefilledarc -- 画一椭圆弧且填充 说明bool imagefilledarc ( resource image, int cx, int cy, int w, int h, int s, int e, int color, int style )
imagefilledarc() 在 image
所代表的图像中以
cx,cy(图像左上角为
0, 0)画一椭圆弧。如果成功则返回 TRUE,失败则返回 FALSE。w 和 h
分别指定了椭圆的宽和高,s 和
e 参数以角度指定了起始和结束点。style
可以是下列值按位或(OR)后的值:
IMG_ARC_PIE IMG_ARC_CHORD IMG_ARC_NOFILL IMG_ARC_EDGED
IMG_ARC_PIE 和 IMG_ARC_CHORD
是互斥的; IMG_ARC_CHORD
只是用直线连接了起始和结束点, IMG_ARC_PIE
则产生圆形边界(如果两个都用, IMG_ARC_CHORD
生效)。 IMG_ARC_NOFILL
指明弧或弦只有轮廓,不填充。 IMG_ARC_EDGED
指明用直线将起始和结束点与中心点相连,和 IMG_ARC_NOFILL
一起使用是画饼状图轮廓的好方法(而不用填充)。
例子 1. 创建一 3D 效果的饼状图
<?php // create image $image = imagecreatetruecolor(100, 100);
// allocate some solors $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); ?>
|
|
| |