title: Converting between multiple image formats in Objective-C
body: <p>I want to be able to, being given a path to an image, convert that image into another image, but with a different format. By format I mean .png, .bmp .jpg .tiff, etc. In pseudocode, this is really easy:</p>
  
  <pre><code>image = [ImageAPI open: imagePath]
  [image save: imagePath withFormat: IMAGEFORMAT] // this is important
  </code></pre>
  
  <p>I have no idea how to do this, though. I barely know more than the NSImage class when it comes to handling images), and that does not seem to have the answer to my problem (no simple save methods like this). Here is the list of formats I'd like to support:</p>
  
  <ul>
  <li>.png</li>
  <li>.tiff</li>
  <li>.gif</li>
  <li>.jpeg</li>
  <li>.bmp</li>
  <li>PROBABLY .pdf (if it isn't very complicated)</li>
  </ul>
  
  <p>By support I mean opening any of those and saving the opened image into any of those formats. There are some combinations here (15 ??? - I think), so I could write a method for each combination like so:</p>
  
  <pre><code>[self saveTiffImageIntoGifWithPath: path] (*15 !!!)
  </code></pre>
  
  <p>But it is defenitely better to use APIs.</p>
  
  <p>If by any chance along the way I also have options like:</p>
  
  <ul>
  <li>keep alpha or not</li>
  <li>resize images</li>
  </ul>
  
  <p>...I'd be happy to support them as well, although they're optional.
  I really hope there's a simple way to do this. THANKS</p>
  
  <p>PS: I know there have been questions about this topic, but they were all iPhone oriented (I want to do this on the mac) and none of them provided a way to do this with multiple formats.</p>