©
本文档使用
php.cn手册 发布
(PECL imagick 2.0.0)
ImagickDraw::setStrokeLineJoin — Specifies the shape to be used at the corners of paths when they are stroked
$linejoin
)本函数还未编写文档,仅有参数列表。
Specifies the shape to be used at the corners of paths (or other vector shapes) when they are stroked.
linejoin
LINEJOIN_ constant
没有返回值。
Example #1 ImagickDraw::setStrokeLineJoin()
<?php
function setStrokeLineJoin ( $strokeColor , $fillColor , $backgroundColor ) {
$draw = new \ ImagickDraw ();
$draw -> setStrokeWidth ( 1 );
$draw -> setStrokeColor ( $strokeColor );
$draw -> setFillColor ( $fillColor );
$draw -> setStrokeWidth ( 20 );
$offset = 220 ;
$lineJoinStyle = [
\ Imagick :: LINEJOIN_MITER ,
\ Imagick :: LINEJOIN_ROUND ,
\ Imagick :: LINEJOIN_BEVEL ,
];
for ( $x = 0 ; $x < count ( $lineJoinStyle ); $x ++) {
$draw -> setStrokeLineJoin ( $lineJoinStyle [ $x ]);
$points = [
[ 'x' => 40 * 5 , 'y' => 10 * 5 + $x * $offset ],
[ 'x' => 20 * 5 , 'y' => 20 * 5 + $x * $offset ],
[ 'x' => 70 * 5 , 'y' => 50 * 5 + $x * $offset ],
[ 'x' => 40 * 5 , 'y' => 10 * 5 + $x * $offset ],
];
$draw -> polyline ( $points );
}
$image = new \ Imagick ();
$image -> newImage ( 500 , 700 , $backgroundColor );
$image -> setImageFormat ( "png" );
$image -> drawImage ( $draw );
header ( "Content-Type: image/png" );
echo $image -> getImageBlob ();
}
?>
[#1] sudopeople gmail [2009-10-21 15:32:48]
For many (myself included) Rex's note maybe not be blatant enough. The constants are declared for the Imagick class only, so using them requires this syntax: Imagick::LINEJOIN_ constant
Here's an example oh how you might use it:
<?php
$img = new Imagick();
$img->newImage($width, $height, new ImagickPixel('transparent'));
$draw = new ImagickDraw();
$draw->setStrokeLineJoin(Imagick::LINEJOIN_ROUND);
?>
If you're not drawing polylines and are drawing simple lines, also see setStrokeLineCap
[#2] Rex Schrader [2009-05-17 20:36:37]
From imagick_helpers.c (pecl release), possible values are:
LINEJOIN_UNDEFINED
LINEJOIN_MITER
LINEJOIN_ROUND
LINEJOIN_BEVEL