ImagickDraw::polyline

(PECL imagick 2, PECL imagick 3)

ImagickDraw::polyline绘制一条折线

描述

public ImagickDraw::polyline(array $coordinates): bool
警告

此函数目前没有文档,只有参数列表可用。

使用当前的笔触、笔触宽度和填充颜色或纹理,使用指定的坐标数组绘制一条折线。

参数

coordinates

x 和 y 坐标数组:array( array( 'x' => 4, 'y' => 6 ), array( 'x' => 8, 'y' => 10 ) )

返回值

成功时返回 true

示例

示例 #1 ImagickDraw::polyline() 示例

<?php
function polyline($strokeColor, $fillColor, $backgroundColor) {
$draw = new \ImagickDraw();

$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);

$draw->setStrokeWidth(5);

$points = [
[
'x' => 40 * 5, 'y' => 10 * 5],
[
'x' => 20 * 5, 'y' => 20 * 5],
[
'x' => 70 * 5, 'y' => 50 * 5],
[
'x' => 60 * 5, 'y' => 15 * 5]
];

$draw->polyline($points);

$image = new \Imagick();
$image->newImage(500, 300, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);

header("Content-Type: image/png");
echo
$image->getImageBlob();
}

?>

添加注释

用户贡献的注释 1 个注释

1
kris at blackpepper dot co dot nz
14 年前
绘制一个填充的等腰三角形

<?php
$width
= 601;
$height = 601;

$max_x = $width - 1;
$max_y = $height - 1;
$mid_y = $max_y / 2;
$mid_x = $max_x / 2;

$fillcolor = '#F00F00';

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

$draw = new ImagickDraw();

$draw->setFillColor($fillcolor);
$draw->setStrokeWidth( 1 );



//起点 //终点
$co_ords = array( array( 'x' => $mid_x, 'y' => 0 ),array('x'=>0,'y'=>$max_y)
,array(
'x' => 0, 'y' => $max_y ),array('x'=>$max_x,'y'=>$max_y)
,array(
'x' => $mid_x, 'y' => 0 ),array('x'=>$max_x,'y'=>$max_y)
);



$draw->polyline($co_ords);

$lo_img->drawImage( $draw );

$lo_img->setImageFormat( "png" );


header( "Content-Type: image/png" );
echo
$lo_img;

$lo_img->destroy();
$draw->destroy();
exit;

} catch (
Exception $ex) {
print_r($ex);
return;
}
?>
To Top