📜  PHP | imagickdraw clone()函数

📅  最后修改于: 2022-05-13 01:56:23.313000             🧑  作者: Mango

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