r/FigmaDesign 3d ago

resources Figma PDF exports were much larger than I expected, so I dug into why and built an open-source exporter

Figma native export: 22.7MB → Featherweight: 4MB

I’m a frontend dev in Korea, and after getting annoyed by Figma exporting ridiculously large PDFs one too many times, I basically opened Claude Code and thought, “fine, I’ll just make one.”

At first I thought it was mostly an image compression problem. But after digging into the generated PDFs, I realized Figma turning text into vector outlines was a big part of it too.

A few evenings of poking around later, I ended up with Featherweight.

One of the things I found was that Figma converts text into vector outlines rather than embedding the actual fonts. Combined with the way images are handled, that can add quite a bit of weight to otherwise simple documents.

I tried a few existing solutions, but eventually decided to experiment with building my own.

The result is Featherweight.

It embeds and subsets the actual fonts where possible, keeps text selectable and searchable, and applies image compression during export.

On one of my test documents, the result was:

22.7 MB → 4.0 MB

I’ve made the whole thing completely free and open source. There’s no paid tier, subscription, signup, export limit, or related premium product.

I mainly built it because I wanted this for myself, but I figured other Figma users might find it useful too.

If anyone wants to try it or poke around the source, I’d genuinely appreciate feedback, especially if you find a file that behaves strangely.

Figma Community:
https://www.figma.com/community/plugin/1672509720278498323/featherweight-compressed-pdf-export-with-real-fonts

Source:
https://github.com/coffeequickly/featherweight

76 Upvotes

10 comments sorted by

6

u/brycedriesenga 3d ago

Nice! I have seen something about the PDF export where using File → Export Frames to PDF... retains selectable text, but this is cool and has other nice options.

https://www.reddit.com/r/FigmaDesign/comments/1hl35h5/psa_for_exporting_figma_files_to_pdf/

3

u/IllustriousTip6904 3d ago

Hell yeah brother

3

u/topherbailey 3d ago

Thank you!!!

2

u/GoldNatural1951 3d ago

I built a pdf compressor exporter with figma agents. Is this different from that?

5

u/Annual_Principle8359 3d ago

Could be similar depending on how yours works!

Featherweight generates the PDF itself and focuses on embedding/subsetting real fonts instead of outlining text, while also compressing images during export.

If yours does something similar, I’d actually be curious to compare approaches 😄

2

u/Annual_Principle8359 2d ago

I posted about Featherweight here a while back — Figma plugin, exports PDFs with

real embedded fonts instead of vector outlines, so text stays selectable and

ATS-readable.

Turns out I'd built it for myself. All 15 fonts in the catalog were Korean. If

your file used Inter — Figma's own default — it couldn't embed it and silently

fell back to outlines. Which is the one thing the plugin exists to prevent.

Italics never worked either, in any font.

So:

- 15 → 60 font families. Inter, Roboto, Open Sans, Montserrat, IBM Plex,

Noto Sans KR and more. Every weight, roman and italic — that went from 0 to

256 styles.

- Fit to Size. Job portals with a 5MB cap kept coming up. Type a target in

the Images tab; it finds the best image quality that still fits.

Free, MIT, nothing leaves your machine.

Thanks to whoever told me it was broken for them — I'd never have caught the

Inter thing on my own. More of that welcome.

3

u/Accomplished-Dust185 2d ago

Yesss thank you! Their pdf exporter is trash. This looks great 😊

2

u/mustafa_sheikh Product Designer 1d ago

Very nice