ImagickDraw::setVectorGraphics

(PECL imagick 2.0.0)
Sets the vector graphics
bool ImagickDraw::setVectorGraphics ( string $xml )

Sets the vector graphics associated with the specified ImagickDraw object. Use this method with ImagickDraw::getVectorGraphics() as a method to persist the vector graphics state.

Parameters:
xml

xml containing the vector graphics

Returns:

Returns TRUE on success or FALSE on failure.

This function is currently not documented; only its argument list is available.

Examples:
ImagickDraw::setVectorGraphics()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
function setVectorGraphics() {
    //Setup a draw object with some drawing in it.
    $draw new \ImagickDraw();
    $draw->setFillColor("red");
    $draw->circle(20, 20, 50, 50);
    $draw->setFillColor("blue");
    $draw->circle(50, 70, 50, 50);
    $draw->rectangle(50, 120, 80, 150);
 
    //Get the drawing as a string
    $SVG $draw->getVectorGraphics();
     
    //$svg is a string, and could be saved anywhere a string can be saved
 
    //Use the saved drawing to generate a new draw object
    $draw2 new \ImagickDraw();
    //Apparently the SVG text is missing the root element. 
    $draw2->setVectorGraphics("<root>".$SVG."</root>");
 
    $imagick new \Imagick();
    $imagick->newImage(200, 200, 'white');
    $imagick->setImageFormat("png");
 
    $imagick->drawImage($draw2);
 
    header("Content-Type: image/png");
    echo $imagick->getImageBlob();
}
 
?>
doc_php
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.