PHP ImagickDraw Functions

Learn how to use the ImagickDraw class in PHP for creating vector images. Explore a complete list of ImagickDraw functions and examples.
The ImagickDraw class helps you create vector images with ImageMagick. These vector images can be saved as files.

PHP ImagickDraw Functions


Syntax:

bool ImagickDraw::s()

Example:

Here's an example of how to use the ImagickDraw::point() function in PHP:

<?php
 
// Create an ImagickDraw object
$draw = new \ImagickDraw();
 
// Set the filled color
$draw->setFillColor('red');
 
// Use loop to draw 10000 points in given area
for ($x = 0; $x < 10000; $x++) {
    $draw->point(rand(0, 300), rand(0, 300));
}
 
// Create an Imagick object
$imagick = new \Imagick();
 
// Set the new image size
$imagick->newImage(300, 300, 'white');
 
// Set the image format
$imagick->setImageFormat("png");
 
// Function to draw the image
$imagick->drawImage($draw);
 
header("Content-Type: image/png");
 
// Display the output image
echo $imagick->getImageBlob();
?>

Output:

This script generates a 300x300 PNG image filled with 10,000 red points.

The list of complete ImagickDraw functions are given below:


ImagickDraw Functions Description
ImagickDraw::annotation() Draw text on the image.
ImagickDraw::arc() Draw an arc.
ImagickDraw::bezier() Draw bezier curves.
ImagickDraw::circle() Draw a circle.
ImagickDraw::getStrokeOpacity() Return the opacity of the outlines of stroked objects.
ImagickDraw::getStrokeWidth() Return the width of the stroke used to draw object outlines.
ImagickDraw::line() Draw a line.
ImagickDraw::point() Draw a point.
ImagickDraw::polygon() Draw a polygon using an array of coordinates.
ImagickDraw::polyline() Draw a polyline using the current stroke settings and an array of coordinates.
ImagickDraw::rectangle() Draw a rectangle.
ImagickDraw::rotate() Rotate the current coordinate space by a specified angle.
ImagickDraw::roundRectangle() Draw a rounded rectangle.
ImagickDraw::scale() Adjust the scaling factor applied to the current coordinate space in horizontal and vertical directions.
ImagickDraw::setFillColor() Set the color to be used for filling shapes.
ImagickDraw::setFillOpacity() Set the opacity to use when drawing using the fill color or texture.
ImagickDraw::setFont() Set the fully-specified font to use when annotating with text.
ImagickDraw::setFontFamily() Set the font family to use when annotating with text.
ImagickDraw::setFontSize() Set the font size in points to use when annotating text.
ImagickDraw::setFontStyle() Set the font style to use when annotating with text (e.g., normal, italic, bold).
ImagickDraw::setFontWeight() Set the font weight to use when annotating with text (e.g., normal, bold).
ImagickDraw::setGravity() Set the placement gravity for text annotations (left, center, right).
ImagickDraw::setStrokeAlpha() Specify the opacity of stroked object outlines (0.0 to 1.0).
ImagickDraw::setStrokeColor() Set the color used for stroking object outlines.
ImagickDraw::setStrokeLineJoin() Define how the corners of paths are joined when they are stroked (round, bevel, miter).
ImagickDraw::setStrokeMiterLimit() Specify the miter limit of the stroke. A higher limit defines sharper corners.
ImagickDraw::setStrokeOpacity() Set the opacity of stroked object outlines (0.0 to 1.0).
ImagickDraw::setStrokeWidth() Set the width of the stroke used to draw object outlines.
ImagickDraw::setTextAlignment() Specify the text alignment for annotations (left, center, right).
ImagickDraw::setTextAntialias() Control whether the text is antialiased (smoothed) or not (jagged edges). Text is antialiased by default.
ImagickDraw::setTextDecoration() Set the decoration to be applied to text annotations (underline, overline, none).
ImagickDraw::setTextUnderColor() Set the color of a background rectangle to be placed under text annotations.
ImagickDraw::setViewbox() Set the overall canvas size for drawing operations.
ImagickDraw::skewX() Skew the current coordinate system in the horizontal direction.
ImagickDraw::skewY() Skew the current coordinate system in the vertical direction.
ImagickDraw::translate() Apply a translation (shift) to the current coordinate system.

Post a Comment