Tiny Online Tools logoTiny Online ToolssearchSearch tools…grid_viewAll Tools
Homechevron_rightPDF Toolschevron_rightPDF Form FlattenerPDF Form Flattener

PDF Form Flattener

Bake filled form values into the page so they can no longer be edited — selectively, with a render check that proves the values are still visible.

upload_file

Click to browse or drag & drop files here

Select a filled PDF form

Accepted: .pdf,application/pdf

Similar Tools

PDF Form Filler

PDF Form Filler

Open any fillable PDF, edit its form fields directly in your browser, and save a completed copy — with an optional flatten step to lock values in place.

PDF Form Data Extractor

PDF Form Data Extractor

Export filled PDF form values to JSON, CSV, FDF or XFDF — including batch mode: many forms in, one spreadsheet out.

PDF Form Field Inspector

PDF Form Field Inspector

Inspect every AcroForm field in a PDF: name hierarchy, type, flag bits, export values, coordinates and appearance problems.

PDF JavaScript Inspector

PDF JavaScript Inspector

Find every script inside a PDF — document actions, page and annotation events, and form-field calculations — and read it without running it.

SVG Perspective Grid Generator

SVG Perspective Grid Generator

Generate one-point perspective grid SVGs with a customizable vanishing point. Create depth backgrounds, retrofuturistic scenes, and illustration overlays for free, no upload required.

UUID Generator

UUID Generator

Generate UUID v4 identifiers.

Regex Generator

Regex Generator

Browse a library of common regex patterns with token explanations.

apps

More Tools

Browse our full collection of free online tools.

Lock a filled PDF form — and check that it worked

Flattening turns form fields into page content. The answers stop being editable, the boxes stop being fields, and the file behaves like a printed document. PDF Form Flattener does that in your browser, one field at a time, and then verifies the result.

Choose what gets flattened

  • Everything except signatures — the default, and the reason this tool exists. Flattening a signature field destroys the signature: the visible mark becomes ink and the cryptographic evidence is gone. A tool that does that quietly is doing real harm.
  • Every field, when the document has no signatures to protect.
  • A chosen subset — bake the answers, keep an approval box editable.

Failures handled instead of thrown

The standard flatten routine is all-or-nothing and throws on the first field it cannot resolve, leaving the document half-processed. Three things cause that: a widget with no /AP /N appearance stream, appearances that are stale relative to the stored value, and a /DA naming a font that the form's /DR resources do not carry. This tool regenerates appearances first, flattens each field independently, and reports the ones that failed by name and reason rather than surfacing a stack trace.

Verification is not optional

A flatten that produces a blank form is the classic failure of this operation, and "it saved without an error" never catches it. So the produced bytes are re-opened and checked twice:

  1. the form is parsed again and its remaining field count asserted;
  2. every flattened value is looked for on the page — text against the extracted text layer, checkboxes and radio buttons by rendering the page and measuring ink inside the widget rectangle.

A before/after preview shows both documents side by side.

Two honest caveats

Flattening is irreversible in the output. Your original file is never modified — a new document is always written — but the flattened copy cannot be turned back into a form. And a flattened field is no longer accessible as a field: a screen reader announces it as ordinary page content, without label, value or role. If accessibility matters more than immutability, mark the fields read-only instead.

Privacy

Everything happens in your browser with pdf-lib and pdf.js. Filled forms usually carry personal data; nothing is uploaded.