PHP Conference Japan 2024

ImagickDraw::setVectorGraphics

(PECL imagick 2, PECL imagick 3)

ImagickDraw::setVectorGraphics设置矢量图形

描述

public ImagickDraw::setVectorGraphics(string $xml): bool
警告

此函数目前未记录;仅提供其参数列表。

设置与指定的 ImagickDraw 对象关联的矢量图形。将此方法与 ImagickDraw::getVectorGraphics() 一起用作持久化矢量图形状态的方法。

参数

xml

包含矢量图形的 xml

返回值

成功时返回 true,失败时返回 false

示例

示例 #1 ImagickDraw::setVectorGraphics() 示例

<?php
function setVectorGraphics() {
// 使用一些绘图设置绘图对象。
$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);

// 将绘图作为字符串获取
$SVG = $draw->getVectorGraphics();

//$svg 是一个字符串,可以保存在任何可以保存字符串的地方

// 使用保存的绘图生成一个新的绘图对象
$draw2 = new \ImagickDraw();
// 显然 SVG 文本缺少根元素。
$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();
}

?>

添加注释

用户贡献注释

此页面没有用户贡献的注释。
To Top