If you set the stroke width to 0, there will often still be a hairline. To remove this hairline, use transparency, f.e. using:
setStrokeColor("#00000000")
hex 0-6 = color -> black
hex 6-8 = opacity -> full transparency
    (PECL imagick 2, PECL imagick 3)
ImagickDraw::setStrokeWidth — Sets the width of the stroke used to draw object outlines
$stroke_width
   ) : bool本函数还未编写文档,仅有参数列表。
Sets the width of the stroke used to draw object outlines.
stroke_widthstroke width
没有返回值。
Example #1 ImagickDraw::setStrokeWidth()
<?php
function setStrokeWidth($strokeColor, $fillColor, $backgroundColor) {
    $draw = new \ImagickDraw();
    $draw->setStrokeWidth(1);
    $draw->setStrokeColor($strokeColor);
    $draw->setFillColor($fillColor);
    $draw->line(100, 100, 400, 145);
    $draw->rectangle(100, 200, 225, 350);
    $draw->setStrokeWidth(5);
    $draw->line(100, 120, 400, 165);
    $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();
}
?>
If you set the stroke width to 0, there will often still be a hairline. To remove this hairline, use transparency, f.e. using:
setStrokeColor("#00000000")
hex 0-6 = color -> black
hex 6-8 = opacity -> full transparency
    
Please note that this function only works (as in: the stroke width changes) when setStrokeColor() is called before.