Exporting Google Slides to PDF on Mac without losing Emojis or Custom Images
When working on presentations for various conferences, I often use Google Slides. Yes, yes, I know - it's very basic, and like hand-editing html in Notepad at this point. But when bouncing between mac laptops and linux desktops, it's handy to have the deck centralised somewhere I can keep chipping away it when I've some free time.
With the decks I'm putting together, I'm a sucker for simple, bright, colourful images to help tell a story. Emojis, basically.

My problem comes when the conference organisers ask for the deck to be shared as a PDF for simpler distribution after the event. Google slides has an "export to PDF" function, but it does not play at all well with emojis inserted from a Mac, particularly if any of the "skin tone" options are used. This seems to be something to do with the Apple Color Emoji setup, and them not being well-loved outside the Apple ecosystem (flashback to getting little square blocks on my Android when iOS-using friends tried to send the original Apple emojis...). For example, in the below image of "man on laptop", the laptop is still there (half-hidden), beside a large colour block. The money and food icons are also a little different. It's long been known that emojis can look different on different devices, but this output is beyond a slightly different icon, and is unusable.

The Solution - More Software!
If you've access to a Mac, then Keynote can save the day. In Google Slides, File -> Download -> pptx
, then in Keynote, import the pptx.
Once in Keynote, File -> Export -> PDF
will create a PDF, and one which renders the emojis correctly!

Keynote magic shrinking text
One thing you may notice importing a deck to Keynote is that there are seemingly-arbitrary changes in text size on different slides in the deck. Keynote has a fun feature where it will render a text box, then attempt to "autosize" text in the box. This can result in font sizes being shrunk or grown significantly, which can look a bit odd on first load.
The solution here is to select the text box you're working with, then in the side menu de-select Text -> Layout -> Autosize Text.

Maybe next time it'll be easier to just use Keynote from the start!
IPC Munich 2025
In October 2025, I'll be speaking at the International PHP Conference in Munich. I'll be talking about Modern PHP Features You’re Probably Not Using (But Should Be). Expect real-world examples, practical takeaways, and a deep dive into cleaning your code while making your life easier!
Get your ticket now and I'll see you there!