PHP 8.5.0 RC 5 available for testing

ImagickDraw::line

(PECL imagick 2, PECL imagick 3)

ImagickDraw::lineРисует линию

Описание

public ImagickDraw::line(
    float $start_x,
    float $start_y,
    float $end_x,
    float $end_y
): bool
Внимание

Функцию пока не задокументировали; для знакомства доступен только список аргументов.

Рисует линию на изображении, используя текущий цвет обводки, её прозрачность и ширину.

Список параметров

start_x

Начальная координата x.

start_y

Начальная координата y.

end_x

Конечная координата x.

end_y

Конечная координата y.

Возвращаемые значения

Функция не возвращает значения после выполнения.

Примеры

Пример #1 Пример использования ImagickDraw::line()

<?php
function line($strokeColor, $fillColor, $backgroundColor) {

$draw = new \ImagickDraw();

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

$draw->setStrokeWidth(2);
$draw->setFontSize(72);

$draw->line(125, 70, 100, 50);
$draw->line(350, 170, 100, 150);

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

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

?>

Добавить

Примечания пользователей 1 note

up
-1
GaryM at BinaryFarm dot com
15 years ago
<?php

// a twist on the above radar screen. 
// This makes random colored spokes from a center point

    $width =  400;
    $height = 400;
   
    $image = new Imagick();
    $image->newImage( $width, $height, new ImagickPixel( 'wheat' ) );
    $draw = new ImagickDraw();
   //$draw->setStrokeColor( new ImagickPixel( 'black' ) );

    $rx = $width / 2;
    $ry = $height / 2;
    $total = 2*M_PI;
    $part = $total / 16;
    while( $total > 0  )
    {
        $ex = $rx +$rx * sin( $total );
        $ey = $ry +$ry * cos( $total );
        $draw->line  ( $rx, $ry, $ex, $ey );
        $total -= $part;

    // We need three HEX numbers to create an RGB color code like '#FF33DD'.

    $draw->setStrokeColor( get_random_color() );
    }
    $image->drawImage( $draw );
    $image->setImageFormat( "png" );
    header( "Content-Type: image/png" );
    echo $image;
    exit;

function get_random_color()        // Thanks to Greg R. for this nice little function.
{
    for ($i = 0; $i<6; $i++)
    {
        $c .=  dechex(rand(0,15));
    }
    return "#$c";
} 
?>
To Top