Flatten PDF
Burn interactive form fields into the document.
Flatten PDF burns interactive form fields (text boxes, checkboxes, radios) into static page content so recipients cannot keep editing them in standard form tools. One button: load, form.flatten(), save as flattened_{original}.pdf. If the file has no AcroForm fields you still get a warning and can proceed — useful as a normalize pass.
Flatten before archiving or printing completed forms so values freeze in place. The operation runs locally with pdf-lib (ignoreEncryption allowed on load); it is effectively irreversible on the output file.
How it works
On upload the tool loads the PDF and counts getForm().getFields(). Zero fields shows the No form fields detected alert but does not block Flatten Document.
Flatten reloads bytes, calls pdfDoc.getForm().flatten() which paints field appearances into the page stream and drops interactive widgets, then save() → blob URL for the result panel (Download Flattened PDF, default flattened_{name}).
How to use
- Open Flatten PDF and click Choose a PDF to flatten.
- Read the warning if shown: No form fields detected (flatten still works).
- Review Ready to Flatten — interactive elements will be baked into the visual layer.
- Click Flatten Document (or Change File to swap files).
- Wait for Flattening PDF… while fields are baked in.
- See Flatten Complete! under the Download step.
- Click Download Flattened PDF → flattened_{name}.pdf.
- Open the result and confirm fields are no longer editable.
Tips
- Flatten completed surveys and HR forms before emailing them for records.
- No-fields warning is informational — running flatten still re-saves the document.
- There is no unflatten; keep an unflattened master if you might re-collect data.
- Works even when the PDF is encrypted at load time (ignoreEncryption).
Flatten PDF FAQ
What does flatten mean?
Form widgets become static page content — text and checkmarks stay visible but are no longer interactive fields.
Will it work if there are no fields?
Yes. You see a warning, but Flatten Document still runs and you can download the result.
Can I unflatten later?
No — flattening the output is effectively irreversible. Keep the original if you need editable fields.
What is the output filename?
flattened_ plus the original name, e.g. flattened_intake-form.pdf.
Is my PDF uploaded?
No. pdf-lib runs entirely in your browser.
Credits
- pdf-lib — form.flatten() to bake AcroForm fields into the page