PDF Forms

Real AcroForm fields, proposed by reading the labels already printed on the page, and one filled PDF per CSV row. It all runs inside the browser.

Open in PDF ARENA

Real fields, not drawings

AcroForm widgets that survive saving, and fill in Acrobat, Chrome and Preview alike.

It reads your labels

"Email:" becomes an email field. "Signature:" becomes a signature field. Each with a confidence figure.

One PDF per row

Paste a CSV, pick a naming pattern, get a ZIP. Validation runs before anything is written.

Fields that are fields

There are two ways to make a PDF fillable. One draws boxes and lines on the page and calls it a form; open it anywhere and there is nothing to click. The other creates AcroForm widgets, which every viewer understands and which survive being saved. This does the second. Each field gets a unique name, a type, a tab position and its own rule. Acrobat fills it. Chrome fills it. Preview fills it, and the values are still there tomorrow. Two things save the real work. On opening, the printed labels are read and fields proposed where they belong, each with a confidence figure and its reason. And once the form exists, a CSV turns it into one filled PDF per row, packed into a ZIP.

How to make a fillable PDF

1

Open your document

Labels are read straight away and proposals appear as dashed boxes on the page.

2

Accept, adjust, add

Take the confident proposals, drag any field you want yourself, and set name, type and whether it is required.

3

Create the form

A copy comes out with real AcroForm fields, tab order sorted by reading position.

4

Fill it once, or five hundred times

Paste a CSV, choose a naming pattern, and every row becomes its own PDF inside a ZIP.

Detection, validation and the bulk pass

Detection works on anchors. A label ending in a colon, a run of dots or a low dashed line says a field belongs beside it, and the width runs to the following text or to the margin. No room right? The field drops underneath. Type comes from the words in the label, matched against lists in Spanish and English: email, phone, date, address, amount, signature, yes or no. Every proposal carries a confidence figure and its reason. Validation is attached to the field, not checked once. Regular expression, length, range, and format for email, phone, date, currency and percentage. In the bulk pass every row is checked before its PDF is written, and whatever failed lands in an errores.txt inside the ZIP. Two hundred documents with a broken address in row 87 is worse than a warning now. The CSV parser handles the awkward cases on purpose: quoted fields, doubled quotes inside a quoted field, line breaks inside a cell, semicolons instead of commas. The separator is detected, never assumed. File names get sanitised. No slashes, no colons, no control characters, no Windows reserved names, and a hard length cap. A pattern is convenient right up to the row where somebody's name turns into a path. One honest limit: pdf-lib cannot mint a cryptographic signature field. Those emerge as reserved text fields with a recognisable name, ready for a real signing step.

Why this one

AcroForm widgets that stay fillable after saving, in any viewer.

Fields proposed from the printed labels, with confidence and reason.

One PDF per CSV row, validated first, packed into a ZIP.

Questions about PDF forms

Short answers, limits included

Will the fields still work after I save the file?
Yes. They are standard AcroForm widgets, which is what every viewer looks for. That is exactly what separates them from text drawn on top of a page.
How good is the automatic detection?
Good on forms with printed labels, useless on a page with no text layer. Each proposal shows a confidence figure and why it was made, and you can take only the confident ones.
Can it create a real digital signature?
No, and it says so on screen. A signature field here is a reserved text field with a recognisable name, ready for an actual signing step. Claiming otherwise would be worse than the limit.
What happens with XFA forms?
They are detected and left alone. New fields arrive as ordinary AcroForm widgets, with a warning that some viewers show the XFA layer instead.
Does my data leave the browser for the bulk fill?
No. The CSV is parsed here, every PDF is generated here, the ZIP is assembled here. That step never touches a server.

Updated on