To remove the dash and switch back to solid line, provide an array with a null value in it for $dashArray.
->setStrokeDashArray( [null] );
(PECL imagick 2, PECL imagick 3)
ImagickDraw::setStrokeDashArray — Spécifie le motif de pointillé
Cette fonction est actuellement non documentée ; seule la liste des arguments est disponible.
Spécifie le motif de pointillé, les pleins et vides. L'objet
strokeDashArray représente un tableau de nombre qui spécifie les
longueurs des pleins et vides, en pixels. Si un nombre impair de valeurs
est fourni, alors la liste est répétée pour obtenir un nombre pair de valeurs.
Pour retirer un tableau de motif existant, passez un nombre d'éléments
à zéro, et null
comme deuxième valeur. Un tableau strokeDashArray typique
contient les membres 5 3 2.
dashArray
Un tableau de nombre décimaux
Retourne true
en cas de succès.
Exemple #1 Exemple avec ImagickDraw::setStrokeDashArray()
<?php
function setStrokeDashArray($strokeColor, $fillColor, $backgroundColor) {
$draw = new \ImagickDraw();
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(4);
$draw->setStrokeDashArray([10, 10]);
$draw->rectangle(100, 50, 225, 175);
$draw->setStrokeDashArray([20, 5, 20, 5, 5, 5,]);
$draw->rectangle(275, 50, 400, 175);
$draw->setStrokeDashArray([20, 5, 20, 5, 5]);
$draw->rectangle(100, 200, 225, 350);
$draw->setStrokeDashArray([1, 1, 1, 1, 2, 2, 3, 3, 5, 5, 8, 8, 13, 13, 21, 21, 34, 34, 55, 55, 89, 89, 144, 144, 233, 233, 377, 377, 610, 610, 987, 987, 1597, 1597, 2584, 2584, 4181, 4181,]);
$draw->rectangle(275, 200, 400, 350);
$image = new \Imagick();
$image->newImage(500, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
header("Content-Type: image/png");
echo $image->getImageBlob();
}
?>
To remove the dash and switch back to solid line, provide an array with a null value in it for $dashArray.
->setStrokeDashArray( [null] );
Example:
<?php
$base_image = new Imagick('example.png');
$rect = new ImagickDraw();
$rect->setFillColor(new ImagickPixel("#EEEEEE"));
$rect->setFillOpacity(0);
$rect->setStrokeColor(new ImagickPixel("#FF0000"));
$rect->setStrokeDashArray(array(5,5,5));
$rect->rectangle(10, 10, 100, 100);
$base_image->drawImage($rect);
header('Content-type: image/png');
echo $base_image->getImage();
exit();
?>