About this tool
This editor lets you mark up a PDF the way you'd expect from a desktop app: add text boxes, draw rectangles and highlights, freehand annotate, and drop in images, all rendered live over the actual page using pdf.js. If the PDF has fillable form fields, they're detected automatically so you can fill them in place. Everything — rendering, editing, and export — happens locally using pdf.js and pdf-lib; your document is never uploaded.
How to use it
- 1Upload a PDF.
- 2Choose a tool — Text, Rectangle, Highlight, or Draw — and click or drag on the page to add it. Use "Add image" to place a picture.
- 3Switch to Select to move, resize, or delete anything you've added.
- 4If the PDF has fillable fields, click "Fill form fields" to enter values directly on the page.
- 5Click "Download PDF" to export the edited file.
Common mistakes to avoid
- Expecting to edit the PDF's original text directly — this tool adds new text, shapes, and images on top of the page rather than modifying existing text content, which is how most browser-based PDF editors work.
- Forgetting to click "Fill form fields" before typing into a form-enabled PDF — without it, the editor is in annotation mode and clicks add shapes instead.
- Placing an image or text box near a page edge and being surprised it's clipped in the export — keep annotations within the visible page bounds.
Use cases
- Adding a signature-style text note, a stamp, or a highlight to a contract before sending it back.
- Filling out a fillable PDF form without printing and scanning it.
- Marking up a document with comments, boxes, or arrows for a reviewer.
- Inserting a logo or image into a PDF page.
Frequently asked questions
Can this tool edit the original text in a PDF?
No. Like most free browser-based PDF editors, it adds new text, shapes, and images as an overlay on top of the existing page content rather than modifying the PDF's original text objects, which would require full document reconstruction.
Is my PDF uploaded to a server?
No. Pages are rendered locally with pdf.js and the edited file is generated locally with pdf-lib — your document never leaves your browser.
What kinds of form fields are supported?
Standard AcroForm text fields and checkboxes are detected and fillable in place. Radio button groups and dropdowns aren't currently supported.
Can I undo a change?
Use "Delete selected" to remove one annotation, or "Clear page" to remove everything added to the current page. There's no multi-step undo history.