title: Reducing the file size of a very large images, without changing the image dimensions
body: <p>Consider an application handling uploading of potentially very large PNG files. </p>
  
  <p>All uploaded files must be stored to disk for later retrieval. However, the PNG files can be up to 30 MB in size, but disk storage limitations gives a maximum per file size of 1 MB.</p>
  
  <p>The problem is to take an input PNG of file size up to 30 MB and produce an output PNG of file size below 1 MB.</p>
  
  <p>This operation will obviously be lossy - and reduction in image quality, colors, etc is not a problem. However, one thing that must not be changed is the image dimension. Hence, an input file of dimension 800x600 must produce an output file of dimension 800x600.</p>
  
  <p>The above requirements outlined above are strict and cannot be changed.</p>
  
  <p><b>Using ImageMagick (or some other open source tool) how would you go about reducing the file size of input PNG-files of size ~30 MB to a maximum of 1 MB per file, without changing image dimensions?</b></p>