public function renderImage1() { $draw = new \ImagickDraw(); $strokeColor = new \ImagickPixel($this->strokeColor); $fillColor = new \ImagickPixel($this->fillColor); $draw->setStrokeOpacity(1); $draw->setStrokeWidth(1.5); $draw->setStrokeColor($strokeColor); $draw->setFillColor($fillColor); $fillRules = [\Imagick::FILLRULE_NONZERO, \Imagick::FILLRULE_EVENODD]; $offset = 220; for ($x = 0; $x < 2; $x++) { $draw->setFillRule($fillRules[$x]); $draw->pathStart(); $draw->pathmovetoabsolute(40 * 5, 10 * 5 + $x * $offset); $draw->pathlinetoabsolute(20 * 5, 20 * 5 + $x * $offset); $draw->pathlinetoabsolute(70 * 5, 50 * 5 + $x * $offset); $draw->pathclose(); $draw->pathmovetoabsolute(20 * 5, 40 * 5 + $x * $offset); $draw->pathlinetoabsolute(70 * 5, 40 * 5 + $x * $offset); $draw->pathlinetoabsolute(90 * 5, 10 * 5 + $x * $offset); $draw->pathclose(); $draw->pathfinish(); } //Create an image object which the draw commands can be rendered into $image = new \Imagick(); $image->newImage(500, 500, $this->backgroundColor); $image->setImageFormat("png"); //Render the draw commands in the ImagickDraw object //into the image. $image->drawImage($draw); //Send the image to the browser header("Content-Type: image/png"); echo $image->getImageBlob(); }
function pathStart($strokeColor, $fillColor, $backgroundColor) { $draw = new \ImagickDraw(); $draw->setStrokeOpacity(1); $draw->setStrokeColor($strokeColor); $draw->setFillColor($fillColor); $draw->setStrokeWidth(2); $draw->setFontSize(72); $draw->pathStart(); $draw->pathMoveToAbsolute(50, 50); $draw->pathLineToAbsolute(100, 50); $draw->pathLineToRelative(0, 50); $draw->pathLineToHorizontalRelative(-50); $draw->pathFinish(); $draw->pathStart(); $draw->pathMoveToAbsolute(50, 50); $draw->pathMoveToRelative(300, 0); $draw->pathLineToRelative(50, 0); $draw->pathLineToVerticalRelative(50); $draw->pathLineToHorizontalAbsolute(350); $draw->pathclose(); $draw->pathFinish(); $draw->pathStart(); $draw->pathMoveToAbsolute(50, 300); $draw->pathCurveToAbsolute(50, 300, 100, 200, 300, 300); $draw->pathLineToVerticalAbsolute(350); $draw->pathFinish(); $imagick = new \Imagick(); $imagick->newImage(500, 500, $backgroundColor); $imagick->setImageFormat("png"); $imagick->drawImage($draw); header("Content-Type: image/png"); echo $imagick->getImageBlob(); }