PHP | imagickdraw pushDefs()函数
ImagickDraw::pushDefs()函数是PHP中的一个内置函数,用于指示以下命令为早期处理创建命名元素。这些通常用于定义绘制命令,为了提高效率,应该更早地安全处理这些命令。此命令对绘图命令的外观没有影响。
句法:
bool ImagickDraw::pushDefs( void )
参数:此函数不接受任何参数。
返回值:此函数在成功时返回 TRUE。
下面的程序说明了PHP中的ImagickDraw::pushDefs()函数:
方案一:
newImage(800, 250, 'black');
// Create a new imagickDraw object
$draw = new ImagickDraw();
// Set some properties of objects
$draw->setFillColor('cyan');
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
// Create a definition
$draw->pushDefs();
$draw->setStrokeColor('white');
$draw->annotation(200, 100, 'GeeksforGeeks');
$draw->popDefs();
// Annotate a text
$draw->annotation(200, 170, 'GeeksforGeeks');
// Render the draw commands
$imagick->drawImage($draw);
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>
输出:
方案二:
newImage(800, 250, 'black');
// Create a new imagickDraw object
$draw = new ImagickDraw();
// Create a definition
$draw->pushDefs();
$draw->setStrokeColor('white');
$draw->line(300, 200, 230, 23);
$draw->popDefs();
// Draw a line
$draw->line(230, 200, 310, 23);
// Render the draw commands
$imagick->drawImage($draw);
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>
输出:
参考: https://www. PHP.net/manual/en/imagickdraw.pushdefs。 PHP