Please, never, ever use PDFs for iOS assets. The format is completely broken for that use, and your app will be larger, with degraded assets as a result.
People do that?!
Yeah, unfortunately. I bet most of the people happy about this feature will use it for iOS assets at some point.
It is the format recommended by Apple in their HIG though, isn’t it?
Yes. Well, with PNG as the first preference. Here is the relevent section of Apple’s HIG:
Produce artwork in the appropriate format. In general, use de-interlaced PNG files for bitmap/raster artwork. PNG supports transparency and, because it's lossless, compression artifacts don't blur important details or alter colors. It's a good choice for intricate artwork that requires effects like shading, textures, and highlights. Use JPEG for photos. Its compression algorithm usually produces smaller sizes than lossless formats and artifacts are harder to discern in photos. Photo-realistic app icons, however, look best as PNGs. Use PDF for glyphs and other flat, vector artwork that requires high-resolution scaling.
The recommendation is to use PNG for most things, JPEG for photos, and PDFs for glyphs and other flat, vector artwork that requires high-resolution scaling.
However, they don’t mention that PDFs get converted to PNGs by Xcode. In doing so, there can be quality and rendering issues, and the resulting PNGs are almost certainly bigger files than if you just saved PNGs from your design tool.
It is true that some assets may look very similar, but when Xcode renders your PDFs to PNGs, it will use macOS’s PDF rendering, which means even things like shape antialiasing will likely be different to your design tool (Sketch matches the standard macOS shape antialiasing, Figma, Photoshop, Illustrator and Affinity Designer don’t).
The PNGs created from a PDFs are typically far bigger files for a few reasons — if there’s scaling issues, the images will be blurrier, which will increase the number of unique colours. Xcode also uses of PNGCrush to compress PNGs, and that can easily be improved, if you disable it.
The HIG also says:
Use the 8-bit color palette for PNG graphics that don’t require full 24-bit color. Using an 8-bit color palette reduces file size without reducing image quality. This palette is not appropriate for photos.
As far as I am aware, Xcode never does this with PDFs, but if you’re saving or optimising your own PNGs, you can. Indexed PNGs are far smaller than RGBA PNGs.
So, given the files are bigger, and even with very simple solid colour glyphs there can be rendering issues, and your PDFs end up as PNGs in the app bundle anyway… there really isn’t any incentive to use PDFs for iOS assets.
Apple are wrong to recommend PDFs. PDF is a terrible UI asset format, and they should not be using it. You should not be using it. You should recommend to colleagues and clients that PDFs are never used as iOS assets.
What about using PDFs to send a bunch of artboards to someone, so they can review the design? Sure. Go for it.
Awesome! Thank you Marc for the in depth reply.
My pleasure. :)
Should we have a design kit for making presentations in Figma faster after this awesome PDF export feature has arrived? Other awesome assets, design kits and Figma templates available here
Been waiting for this since day one. Stoked!
This is awesome! Finally! :) Now for the sketch export feature and we 'll switch to Figma fully in no time.
Really looking forward to the Figma to Sketch converter.
The thought that goes into their work is inspiring. They could of snapped in something off the shelve, but they chose not to compromise. Well done!
Agreed. The attention to detail is what stands out in this feature release.
This is brilliant. I was playing around with PDF export and the new export panel yesterday, and I've already used it half a dozen times for client work.
Figma truly are game changers.
I like that they've added this feature. It makes it a lot more versatile and just convenient for sharing designs in my own process.
Maybe I am missing something, but why do digital platforms need a PDF export? Just share the link. Nothing needs to be printed...
Slide deck is a primary use case for us. Also invoices and resumes. All of these would be sent through email.
But I don't understand why email needs PDF? Just send the link?
What do you mean by slide deck? As in a powerpoint show? Surely that would use JPG?
Keeping a permanent record of something. PNGs and JPGs don't allow text selection.
Surely the permanent record is "the" file. Figma has version control. So you are never going to "lose" anything.
I've already utilized the .pdf export for a government agency that still only uses IE11. (since IE isn't supported by Figma). Figma made the export process very easy to export all of the screens, then I just relinked areas in the .pdf doc to mimic the prototype. Figma is great....but damn...US government agencies need to update from IE.