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 所代表的圖像中以 cxcy(圖像左上角為 0, 0)畫一橢圓弧。若果成功則返回 TRUE,失敗則返回 FALSEwh 分別指定了橢圓的寬和高,se 參數以角度指定了起始和結束點。style 可以是下列值按位或(OR)後的值:

  1. IMG_ARC_PIE

  2. IMG_ARC_CHORD

  3. IMG_ARC_NOFILL

  4. IMG_ARC_EDGED

IMG_ARC_PIEIMG_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(100100);

// allocate some solors
$white    imagecolorallocate($image0xFF0xFF0xFF);
$gray     imagecolorallocate($image0xC00xC00xC0);
$darkgray imagecolorallocate($image0x900x900x90);
$navy     imagecolorallocate($image0x000x000x80);
$darknavy imagecolorallocate($image0x000x000x50);
$red      imagecolorallocate($image0xFF0x000x00);
$darkred  imagecolorallocate($image0x900x000x00);

// make the 3D effect
for ($i 60$i 50$i--) {
  
imagefilledarc($image50$i10050045$darknavyIMG_ARC_PIE);
  
imagefilledarc($image50$i100504575 $darkgrayIMG_ARC_PIE);
  
imagefilledarc($image50$i1005075360 $darkredIMG_ARC_PIE);
}

imagefilledarc($image505010050045$navyIMG_ARC_PIE);
imagefilledarc($image5050100504575 $grayIMG_ARC_PIE);
imagefilledarc($image50501005075360 $redIMG_ARC_PIE);


// flush image
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>

注: 本函數需要 GD 2.0.1 或更高版本。