📅  最后修改于: 2023-12-03 15:33:33.408000             🧑  作者: Mango
imagickdraw ellipse()
函数可以在 imagickdraw
对象中画一个椭圆(椭圆是一个椭圆形的图形,可以看作是一个长为 a
,宽为 b
的矩形,其中 a
和 b
分别是椭圆的长轴和短轴)。
public ImagickDraw ImagickDraw::ellipse(
float $ox,
float $oy,
float $rx,
float $ry,
float $start,
float $end
)
参数解释如下:
$ox
:椭圆中心点的 X 坐标。$oy
:椭圆中心点的 Y 坐标。$rx
:椭圆的长半轴长度(radius X)。$ry
:椭圆的短半轴长度(radius Y)。$start
:椭圆弧形的起始角度(单位为度数,顺时针方向为正方向)。$end
:椭圆弧形的终止角度(单位为度数,顺时针方向为正方向)。该方法返回 imagickdraw
对象。
下面的代码演示了如何使用 imagickdraw ellipse()
函数画一个椭圆:
$draw = new \ImagickDraw();
$draw->setStrokeOpacity(1);
$draw->setStrokeColor('#000000');
$draw->setFillColor('#FFFFFF');
$draw->setStrokeWidth(2);
$draw->ellipse(100, 100, 80, 50, 0, 360);
$imagick = new \Imagick();
$imagick->newImage(200, 200, '#FFFFFF');
$imagick->setImageFormat('png');
$imagick->drawImage($draw);
header('Content-Type: image/png');
echo $imagick;
上述代码会生成一个宽为 200
,高为 200
的白色画布,然后在其中画一个位于 (100,100)
的椭圆,长为 80
,宽为 50
,弧形从 0 度逆时针画到 360 度。最终输出的结果如下图所示:
ellipse()
方法画的就是一个完整的椭圆。ellipse()
方法画的就是一个椭圆的一部分,这个部分的大小由起始角度和终止角度决定。