title: How to save an Imagick object (php)
body: <p>I guess it's a silly question, but it's my first time to deal with php and image handling. In short I wonder how I can save the image instead of echoing it on a web page. The code is for distorting image which might not be in important in this question, you can just see the last few line when I save the image..</p>
  
  <p>Codes:</p>
  
  <pre><code>/* Create new object */
  $im = new Imagick('my_img.png');
  
  
  $width = $im-&gt;getImageWidth();
  $height = $im-&gt;getImageHeight();
  
  /* Set the image format to png */
  $im-&gt;setImageFormat('png');
  
  /* Fill new visible areas with transparent */
  $im-&gt;setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
  
  /* Activate matte */
  $im-&gt;setImageMatte(true);
  
  /* Control points for the distortion */
  $controlPoints = array( 0, 0, 
                      $height*0.7, $height*0.3,
  
                      0, $height,
                      0, $height,
  
                      $width, 0,
                      $height*0.7+$width, $height*0.3,
  
                      $width, $height,
                      $width, $height);
  
  /* Perform the distortion */                       
  $im-&gt;distortImage(Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);
  
  /* Ouput the image */ 
  //commented out because I want to save the image instead
  //header("Content-Type: image/png");
  //echo $im;
  
  // right way to save image?
  imagepng($im, 'new_image.png');
  
  // Free up memory
  imagedestroy($im);
  </code></pre>
  
  <p>The error I get: imagepng(): supplied argument is not a valid Image resource...</p>