ImagickDraw
在线手册:中文  英文

ImagickDraw::ellipse

(PECL imagick 2.0.0)

ImagickDraw::ellipseDraws an ellipse on the image

说明

bool ImagickDraw::ellipse ( float $ox , float $oy , float $rx , float $ry , float $start , float $end )
Warning

本函数还未编写文档,仅有参数列表。

Draws an ellipse on the image.

参数

ox

oy

rx

ry

start

end

返回值

没有返回值。


ImagickDraw
在线手册:中文  英文

用户评论:

Axeia (2009-03-31 14:10:52)

<?php
/**
 * Please note that if you use a stroke. ( Imagick::setStrokeWidth( 2 ) ) the
 * stroke is drawn outside the ellipse dimensions. 
 *
 * @param float $ox - Offset X, distance from the center of the ellipse till the left border of the image
 * @param float $oy - Offset Y, distance from the center of the ellipse till the top of the image
 * @param float $rx - X radius
 * @param float $ry - Y radius
 * @param float float $start - Starting angle in degrees.
 * @param float float $end - End angle in degrees.
 *
 */
ImagickDraw::ellipsefloat $ox  float $oy  float $rx  float $ry  float $start  float $end  );
?>

Example of drawing a full ellipse (from 0, 360) and outputting it as a PNG.
Do note, that this is  by default anti-aliased unlike the GD functions which only support it on lines that aren't on a transparent background.
<?php
$width 
=  200;
$height 100;
$border 2;

$img = new Imagick();
$img->newImage$width$height, new ImagickPixel'transparent' ) );

$draw = new ImagickDraw();
$draw->setStrokeColor( new ImagickPixel'black' ) );
$draw->setStrokeWidth);
$draw->setFillColor( new ImagickPixel'transparent' ) );
//Substract the border from the radius so it doesn't fall outside the screen.
$draw->ellipse$width/2$height/2, ($width/2)-$border, ($height/2)-$border0360 );
$img->drawImage$draw );
$img->setImageFormat"png" );

header"Content-Type: image/png" );
echo 
$img;
?>

易百教程