(PECL imagick 2, PECL imagick 3)
ImagickDraw::setVectorGraphics — ベクターグラフィックを設定する
この関数は、 現在のところ詳細な情報はありません。引数のリストのみが 記述されています。
指定した ImagickDraw オブジェクトに関連付けるベクターグラフィックを設定します。 このメソッドを ImagickDraw::getVectorGraphics() と組み合わせて使用すると、 ベクターグラフィックの状態を持続させることができます。
xml
ベクターグラフィックを表す xml。
成功した場合に true
を、失敗した場合に false
を返します。
例1 ImagickDraw::setVectorGraphics() の例
<?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();
}
?>