©
This document uses PHP Chinese website manual Release
(PECL imagick 2.0.0)
ImagickDraw::line — Draws a line
$sx
, float $sy
, float $ex
, float $ey
)本函数还未编写文档,仅有参数列表。
Draws a line on the image using the current stroke color, stroke opacity, and stroke width.
sx
starting x coordinate
sy
starting y coordinate
ex
ending x coordinate
ey
ending y coordinate
没有返回值。
Example #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] GaryM at BinaryFarm dot com [2010-02-24 11:48:31]
<?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";
}
?>