PDF Editor

Edit the actual text inside a PDF in your browser — change words, move content around, swap fonts and colors. Best for PDFs with selectable text.

PDF Editor is a Pro feature — included in PDFwarp Pro at $9 USD/month along with every other tool and unlimited conversions.

The editor is a Pro page: PyMuPDF extracts every text line as a box you can click, drag, and retype in the browser. Saving is not a content-stream patch. Pages you did not touch are copied as vectors; pages you edited are rendered at 200 DPI, the old text is painted out, and the new words are drawn with Pillow and Noto fonts — which is why Arabic and CJK survive and why those pages become image-based.

Why use PDFwarp for PDF Editor?

How to use PDF Editor — step by step

  1. Upload your PDF — each page renders with all text blocks highlighted.
  2. Click a text block to select it. Drag handles to resize. Double-click to edit text.
  3. Use the toolbar to change font, size, color, bold, italic, or alignment.
  4. Click Save PDF when done — your edited PDF downloads instantly.

Tips & best practices

Text-based PDFs only

The editor needs real, selectable text. Scanned PDFs have nothing to click. AI Scan to Text produces a new text document — it does not add a hidden layer back onto the scan — so treat that output as a fresh file, not an in-place OCR of the original.

Resize the box before typing long text

If your replacement text is longer than the original, drag the box handles to grow it first. Otherwise the font auto-shrinks to fit the original footprint, which looks odd next to unmodified text.

Unedited pages stay vectors

If you only change page 3 of a 20-page file, pages 1–2 and 4–20 are copied as-is (fonts, Arabic/CJK included). Only page 3 is rasterized. Edit as few pages as you can when print quality or file size matters.

Under the hood

Extract is PyMuPDF; the UI is in the browser

extract-blocks opens the PDF with fitz, reads each line's bbox, font, size, and color, and returns a JPEG preview with those text areas painted white so your typed overlay sits cleanly on top. The file is not edited until you click Save. Encrypted files and uploads over 100 pages are rejected with a specific error.

Save is an image pipeline on edited pages only

apply-edits copies untouched pages with insert_pdf (vector, original fonts). Pages with operations are rendered at 200 DPI, old text is whited out, and new text is drawn with Pillow plus the Noto/Liberation fonts installed on the server. That avoids the classic '???' when a PDF's embedded font cannot encode the characters you typed.

RTL is a separate path

Arabic and Hebrew that you actually retype go through a dedicated insert path with Noto RTL fonts, not the Latin image draw. If the matching font file is missing on the server, that typed RTL op is skipped so the original glyphs stay rather than becoming tofu. Reposition-only RTL moves pixels instead of re-inserting text.

Frequently asked questions

Does this work on scanned PDFs?

Scanned PDFs contain images, not text — there are no text blocks to edit. Use AI Scan to Text first if you need a text document, then decide whether the editor or Word is the right next step.

Will my images and logos stay in place?

Yes — only text blocks are selectable. Images and graphics stay in the page render. On pages you edit, the whole page is flattened to a 200 DPI image, so those pixels stay put even though the page is no longer a mix of vectors and text.

What happens if my edited text is longer than the original box?

The text is reflowed inside the box you sized. If it still overflows, the font size is reduced to fit.

Is there a page limit?

Yes — 100 pages. Split a longer file, edit each part, then merge. Encrypted files must be unlocked first.

What plans support PDF Editor?

PDF Editor requires a Pro account. Upgrade at pdfwarp.com/pricing. The editor does not send page content to xAI — it is a Pro tool, not an AI tool.

Related tools