Come leggere la string SVG in Imagick?

Ho una string contenente markup per un elemento svg.

<svg id="someId" width="300" height="300"> <polygon id="another_id" fill="green" stroke="black" stroke-width="5" points="200,100 131,5 19,41 19,159 131,195 "></polygon> </svg> 

Come posso leggere questa string in Imagick e visualizzarla.

 $svg = '<svg id="someId" width="300" height="300"><polygon id="another_id" fill="green" stroke="black" stroke-width="5" points="200,100 131,5 19,41 19,159 131,195 "></polygon> </svg>'; $image = new Imagick(); // This is not working. $image->readImageBlob($svg); $image->setImageFormat("png"); header("Content-Type: image/png"); echo $image; 

Come posso leggere questa string svg in modo che possa procedere con altre cose. Grazie

Devi aggiungere <?xml version="1.0"?> All'inizio della variabile $ svg.

Questo codice funziona per me:

 $svg = '<?xml version="1.0"?><svg id="someId" width="300" height="300"><polygon id="another_id" fill="green" stroke="black" stroke-width="5" points="200,100 131,5 19,41 19,159 131,195 "></polygon></svg>'; $image = new Imagick(); $image->readImageBlob($svg); $image->setImageFormat("png"); header("Content-Type: image/png"); echo $image;