English | 简体中文 | 繁體中文
查询

ImagickDraw::popPattern()函数—用法及示例

「 从绘图对象的模式堆栈中弹出最后一个模式,并将当前模式重置为上一个模式 」


函数名:ImagickDraw::popPattern()

适用版本:ImagickDraw::popPattern()函数在PHP Imagick扩展版本3.4.3及以上可用。

用法:ImagickDraw::popPattern()函数用于从绘图对象的模式堆栈中弹出最后一个模式,并将当前模式重置为上一个模式。

语法:bool ImagickDraw::popPattern()

示例:

// 创建ImagickDraw对象
$draw = new ImagickDraw();

// 定义一个模式
$pattern = '<pattern id="myPattern" x="0" y="0" width="20" height="20" patternUnits="userSpaceOnUse">
                <circle cx="10" cy="10" r="5" fill="red" />
            </pattern>';

// 将模式添加到绘图对象
$draw->pushPattern('myPattern', 0, 0, 20, 20, $pattern);

// 绘制一个使用模式的矩形
$draw->rectangle(50, 50, 150, 150);
$draw->setFillPatternURL('#myPattern');
$draw->draw();

// 弹出模式
$draw->popPattern();

// 绘制一个不使用模式的矩形
$draw->rectangle(200, 50, 300, 150);
$draw->setFillColor('blue');
$draw->draw();

// 创建Imagick对象并应用绘图对象
$image = new Imagick();
$image->newImage(400, 200, 'white');
$image->setImageFormat('png');
$image->drawImage($draw);

// 输出图像
header('Content-Type: image/png');
echo $image;

在上面的示例中,我们首先创建了一个ImagickDraw对象,然后定义了一个模式并将其添加到绘图对象中。然后我们使用该模式绘制了一个矩形。接着,我们使用popPattern()函数弹出模式,并绘制了另一个矩形,这次不使用模式。最后,我们创建了一个Imagick对象并应用了绘图对象,然后将图像输出为PNG格式。

补充纠错
热门PHP函数
分享链接