PHP | imagickdraw clone()函数
ImagickDraw::clone()函数是PHP中的一个内置函数,用于制作指定 ImagickDraw 对象的精确副本。
句法:
ImagickDraw ImagickDraw::clone( void )
参数:此函数不接受任何参数。
返回值:此函数在成功或失败时返回指定 ImagickDraw 对象的精确副本。
异常:此函数在出错时抛出 ImagickException。
下面的程序说明了PHP中的ImagickDraw::clone()函数:
方案一:
newImage(800, 250, 'white');
// Create a new ImagickDraw object
$draw = new ImagickDraw();
// Set the text properties
$draw->setFontSize(100);
$draw->setFillColor('blue');
// Apply the annotation() function
$draw->annotation(50, 150, 'GeeksforGeeks');
// Create a new ImagickDraw object
$copied = new ImagickDraw();
// Copy the object
$copied = $draw->clone();
// Render the draw commands from copied object
$imagick->drawImage($copied);
// Show the output
$imagick->setImageFormat("png");
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>
输出:
方案二:
newImage(800, 250, 'white');
// Create a new ImagickDraw object
$draw = new ImagickDraw();
// Draw a circle
$draw->circle(200, 100, 100, 100);
// Create a new ImagickDraw object
$copied = new ImagickDraw();
// Copy the object
$copied = $draw->clone();
// Render the draw commands from copied object
$imagick->drawImage($copied);
// Add a border
$imagick->borderImage('black', 1, 1);
// Show the output
$imagick->setImageFormat("png");
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>
输出:
参考: https://www. PHP.net/manual/en/imagickdraw.clone。 PHP