Is there any way to teach Preview how to export/save (and not just import/open) additional formats? If so, how?

Default export formats in Preview.app (OS X 11 “El Capitan”)

As you may know, Apple has removed several export formats from the default dialog in recent OS X versions. They are still available if holding down Opt/Alt, though. Yay for “expert features”!

Advanced export formats in Preview.app (OS X 11 “El Capitan”)

Default formats

Additional advanced formats

  • “No” if based on a reliable source is of course also a valid answer. – Crissov Dec 13 '15 at 12:38
  • Are you asking how to access the additional formats without pressing opt, or add an entirely new format? – Ashley Mar 21 '16 at 23:26
  • @Ashley Entirely new formats. – Crissov Mar 22 '16 at 6:03
  • Related question for video formats (and QuickLook): apple.stackexchange.com/questions/192090/… – Crissov Mar 31 '16 at 19:11

The simple answer here is No.

You cannot add formats because the libraries and support for those libraries must be compiled into the Preview application. Since Preview is not an Open Source project, there is no access to the source code to add this support and subsequently compile it.

I investigated creating a plugin, however that also hit a dead end as there is no way to access the Plugin API (if it exists)


The best way to address this is to let Apple know about it by submitting feedback: http://www.apple.com/feedback/macosx.html

  • 1
    The thread at apple.com is from 2011. Did anything change with OS X 10.11+ and App Extensions? I assume Preview relies upon Image I/O for supported formats and not QuickLook plugins or AV Foundation (successor to QuickTime). – Crissov Mar 22 '16 at 12:35
  • Everything they had was for Photos, not Preview. While Photos looks extensible, Preview is what you get. What I saw with Image I/O is was for manipulating the images with the supported formats, I didn't see anything about adding additional formats. – Allan Mar 22 '16 at 12:56

There's no possibility to extend 'Preview.app', without re-compilation. The source code is not public, so there's no way.

Give up with Preview.app, as it has more drawbacks, than benefits: small number of formats, performance of Preview.app is surprisingly bad as well... I took decision for myself to move alternative way.

I highly recommend to try XnView (freeware) (I mean XnView MP, which is the enhanced version of XnView Classic). Probably it's not looking that user friendly in terms of  Apple style after Preview.app, but it's easily compensated with tons of nice features, and extreme speed. Regarding your purposes - it has Batch Conversion conversion feature, plus supports more than 500 image formats and export to about 70 different file formats.

  • @GeoffNixon, why down-vote? What I said incorrect? read the first sentence, outlined in bold "without re-compilation". The original question is about plugins to extend, and you are proposing to create conversion plugins yourself, and build them using some frameworks, without any details. Definitely not the short path ;) – Farside Mar 24 '16 at 8:37
  • Yes, it is incorrect. There are in fact any number of ways one could extend Preview without recompilation. Most of them are not really things you want to mess with (SIMBL, dylib interposition, etc); but it is possible. Be careful with such black-and-white statements! – Geoff Nixon Mar 24 '16 at 8:56
  • Having said that, I don't disagree with your recommendation; and I never claimed building such plugins would be easy; but the question was How ..., and well, that is how one would do that. – Geoff Nixon Mar 24 '16 at 8:59
  • You are just manipulating words... What you state, would mean to read in-depth information on writing kernels and creating image units, in Xcode. Doesn't it mean writing code and compiling?! So I don't agree with the down vote here, it wasn't fair. – Farside Mar 24 '16 at 9:57
  • 2
    Yes, I'm manipulating words. So are you. This is called writing. Anyway, compiling, yes, re-compiling Preview, no. There is a big difference; plugins exist so that applications don't have to be recompiled. There is literally a PlugIns directory within the Preview.app application bundle, so I'm pretty sure Preview.app supports plug-ins. Someone has to compile a plugin; they don't materialize out of thin air. I'm not going to engage any further in a flame war with you. – Geoff Nixon Mar 24 '16 at 10:21

Yes, you can, using the CoreImage and ImageIO frameworks. To have Preview recognize your custom image format, it must be registered properly (CoreTypes), etc. See:

Packaging and Loading Image Units

Custom Filters

Cocoa/Images Overview

Application Extensions

  • As far as I understood @Crissov , he was asking in the original question about plugins, which doesn't assume the knowdlege of programming, and you proposed to compile libs and to create formats extensions with the use of Cocoa Drawing... if that would be that easy, then everyone would have library packs, and shared or would include it to OSX package. – Farside Mar 24 '16 at 9:52
  • @Farside Actually, I wanted to know if it was possible for someone in a documented and supported way that would make it possible for me to use it, i.e. if a package can be written that I can download and install on my copy of OS X that would be fine as well. However, skimming the links in this answer I’m still not sure how it would be possible and whether someone has done it for, say, Google’s WebP – or why not. – Crissov Mar 25 '16 at 20:38
  • @GeoffNixon Could you perhaps be a bit more specific, please? In the Cocoa documenation, section “Creating New Image Representation Classes”, it says: “If you want to add support for new image formats (…), you may want to subclass NSImageRep.” It’s unclear to me whether and how Preview would be able to use that. Should this better be asked on Stack Overflow instead? – Crissov Mar 27 '16 at 21:41
  • I’ve awarded the bounty to this answer, but have not accepted it (yet), because for that it’s lacking required details in my opinion. – Crissov Mar 28 '16 at 16:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .