International PHP Conference Munich 2024

ImagickDraw::polyline

(PECL imagick 2, PECL imagick 3)

ImagickDraw::polylineDraws a polyline

Description

public ImagickDraw::polyline(array $coordinates): bool
Warning

This function is currently not documented; only its argument list is available.

Draws a polyline using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.

Parameters

coordinates

array of x and y coordinates: array( array( 'x' => 4, 'y' => 6 ), array( 'x' => 8, 'y' => 10 ) )

Return Values

Returns true on success.

Examples

Example #1 ImagickDraw::polyline() example

<?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();
}

?>

add a note

User Contributed Notes 1 note

up
1
kris at blackpepper dot co dot nz
14 years ago
draw a filled Isosceles Triangle

<?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 );



//start point //end point
$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