The ImagickDraw::destroy() function is an inbuilt function in PHP which is used to free all resources associated with the ImagickDraw object.
Syntax:
bool ImagickDraw::destroy( void )
Parameters: This function doesn’t accepts any parameter.
Return Value: This function returns TRUE on success.
Exceptions: This function throws ImagickException on error.
Below programs illustrate the ImagickDraw::destroy() function in PHP:
Program 1:
<?php // Create a new ImagickDraw object $draw = new ImagickDraw();
// Draw a circle $draw ->circle(10, 20, 600, 200);
// Draw a line $draw ->line(10, 20, 600, 200);
echo 'Before destroying:<br>' ;
echo $draw ->getVectorGraphics();
// Destroy object $draw ->destroy();
echo '<br>After destroying:<br>' ;
echo $draw ->getVectorGraphics();
?> |
Output:
Before destroying:
UndefinedNone#0000000000001Evenodd12UndefinedUndefined0Undefined#FFFFFFFFFFFFFFFF10ButtMiter1001Undefined1#000000000000FFFFcircle 10 20 600 200 line 10 20 600 200
After destroying:
UndefinedNone#0000000000001Evenodd12UndefinedUndefined0Undefined#FFFFFFFFFFFFFFFF10ButtMiter1001Undefined1#000000000000FFFF
Program 2:
<?php // Create a new imagick object $imagick = new Imagick();
// Create a image on imagick object $imagick ->newImage(800, 250, 'white' );
// Create a new ImagickDraw object $draw = new ImagickDraw();
// Draw a line $draw ->line(10, 20, 600, 200);
// Render the draw commands $imagick ->drawImage( $draw );
// Destroy object after drawing $draw ->destroy();
// Show the output $imagick ->setImageFormat( 'png' );
header( "Content-Type: image/png" );
echo $imagick ->getImageBlob();
?> |
Output:
Reference: https://www.php.net/manual/en/imagickdraw.destroy.php