PDF to Text Converter for Fast Extraction

A PDF stores text as positioned fragments rather than flowing paragraphs, which is why copying out of one often scrambles the order. This page reads the file with pdf.js inside your browser, rebuilds the lines either by layout or by raw order, and hands back a plain text box you can copy or download. Choose a page range to work through a long document a piece at a time. The file stays on your machine the whole time.

Extract Text Page by Page

File, range, and reading mode The document stays in this tab.

Choose a PDF

Pick one file. Password-protected and broken files are reported when you press Extract text.

Reading options

Choose a PDF, then press Extract text.

Extracted text

How It Works

The decoder walks the document page by page and collects every text item with its coordinates. Keep layout sorts those items by baseline, then by horizontal position, and joins neighbours with a space whenever the gap looks like a column break. Raw reading order concatenates the items in the sequence the file stores them, which is fast but pays no attention to spacing.

A range such as 1-3,5 is parsed against the real page count before any page is read, so a group that starts past the end shows up as a note instead of a crash. Pages that hold no characters at all are skipped in the output, and a document with none of them produces the image-only message.

The finished text lands in the box with a page, word, and character count above it. The download link points at a local object URL for a plain .txt file, and the copy button places the same text on the clipboard. Nothing in this chain contacts a server.

Before and After

Before (manual paste)
4. Results the run was
conducted in three
stages 3. Method
After (layout mode)
3. Method
the run was conducted in three stages
4. Results
Before (range left blank)
file: annual-report.pdf
18 pages scanned at once
slow pass over pages you skip
After (range set)
4 pages, 1,204 words, 7,890 characters
pages read: 1,2,3,5
Download .txt ready

Use Cases

Scenario Setting Result
Quoting a paper for research Page range around the passage Clean lines to paste into notes
Turning a contract into a diff Layout mode, full range A .txt file your diff tool can read
Checking what text sits in a scanned report Press Extract on the first try Image-only message before you commit to OCR
Pulling numbers out of a two-column table Switch modes and compare Whichever mode holds the columns wins

Common Mistakes

  • Expecting a scan to yield text. Picture-only pages report that nothing is extractable, and an OCR pass is the fix outside this page.
  • Using raw reading order on a two-column layout. Lines from both columns interleave, and the result reads like shuffled cards.
  • Ignoring range notes. A group that starts past the last page is dropped while the rest runs, so half a range can vanish quietly.
  • Trying to repair line breaks inside the box. It is read-only by design, so copy the text into an editor first.

Best Practices

  • Start with Keep layout; switch to raw reading order only when the spacing looks wrong for the document in front of you.
  • Work in small page ranges on big files so the tab stays quick and you can check each batch before moving on.
  • Name the downloaded file with its range, such as report-p1-5.txt, when several runs of one PDF end up in the same folder.
  • Run the second mode when a table comes out mashed. One of the two usually holds the columns, and the swap takes one click.

Frequently Asked Questions

Does my PDF get uploaded anywhere?

No. The file is read into browser memory with the File API, and pdf.js pulls the text out locally. No request carries your document, and closing the tab discards everything, including the download link.

What is the difference between Keep layout and raw reading order?

Keep layout groups text items that sit on the same baseline and inserts spaces by horizontal distance, so tables and columns hold their shape. Raw reading order follows the sequence the text was written in the file, which is quicker to skim but ignores spacing.

How do I extract only certain pages?

Type a range such as 1-3,5 in the page box; an empty box means every page. The range is checked against the real page count, groups that start past the last page are reported, and the valid parts still run.

Why did it say the PDF has no extractable text?

Scanned documents store their content as pictures, so no characters sit in the text layer. This page does not do OCR; run the scans through an OCR program first, then extract from the file it produces.

What happens with a password-protected file?

The decoder refuses documents that need a password, and the error line says the file could not be opened as a PDF. Remove the password in a desktop app first, then come back and extract the pages you need.

How are words and characters counted?

Words are runs of letters and digits across the pages that were read, and characters count every character in those pages. Headers and footers count too, because they are part of what the file stores.

Can I edit the text before downloading?

The box is read-only so the extraction stays exactly as it came out. Copy it into an editor to trim headers or fix line breaks, or use the download link for a .txt file as it stands.