PHP 8.4.2 Released!

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

?>

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