PDF to text converter

Drop a PDF. You get its text as plain text, with the line handling and page breaks you choose, to copy or download as .txt. The file is not uploaded.

Free, no account needed. Updated .

Short answer

To get text from a PDF, read the text layer that the PDF stores and put the words back in reading order. This tool does that in your browser with pdf.js, then lets you keep the PDF line breaks or join wrapped lines into paragraphs, and mark where each page starts.

How to extract text from a PDF

  1. Drop the PDF or select it. The file is read in your browser with pdf.js, the PDF library from Mozilla. Up to 50 MB and 500 pages. A counter shows the page it is reading.
  2. Choose how lines and pages come out. Join wrapped lines into paragraphs, keep the PDF lines, or keep the layout spacing. Then choose what goes between pages. Changing an option updates the text at once; the file is not read again.
  3. Copy or download. Copy all the text, download it as a .txt file, or open Copy one page at a time to copy single pages.

How text comes out of a PDF

A PDF is a set of drawing instructions: put this run of characters at this position, in this font and size. It does not store lines, paragraphs or reading order. To get plain text back, the tool:

  • Rebuilds lines. Pieces of text on the same baseline (within a third of the font size) are one line, read from left to right. A space is added where the gap between two pieces is wider than 15% of the font size.
  • Reads from the top down. Lines are sorted by their height on the page.
  • Removes repeated headers and footers. In a PDF of 3 pages or more, a first or last line that repeats on at least half of the pages (with the numbers ignored) is dropped, and so are lines such as "12" or "Page 3 of 9". Clear the option if you need them.

The three line options

Line options and when to use them
OptionWhat you getUse it for
Join into paragraphsWrapped lines become one paragraph, with a blank line between paragraphs. A new paragraph starts after a larger gap, a change in font size or a list item.Reading, pasting into an email or a document, AI tools and search
Keep PDF linesOne line of text for each line in the PDF, exactly where the PDF wraps it.Addresses, forms, poems, lists and line-by-line comparison
Keep layout spacingPDF lines, and wide gaps between words stay as runs of spaces.Simple tables, invoices and two-column text in a monospace font

With paragraphs, a word that the PDF splits with a hyphen at the end of a line is joined again. Clear Join words split with a hyphen for text where the hyphen is real, such as part numbers.

Example

A refund policy PDF has a title and two paragraphs, the first one wrapped over two lines with a hyphen:

text
Refund policy
You can return an item within 30 days of de-
livery for a full refund.
Refunds go back to the card you paid with.

That is what Keep PDF lines gives you. Join into paragraphs gives you this, with the hyphenated word joined and 25 words counted:

text
Refund policy

You can return an item within 30 days of delivery for a full refund.

Refunds go back to the card you paid with.

Page separators

  • --- Page N --- line. A marker line before each page, so you can find a page in the text. Empty pages keep their marker, so the numbers always match the PDF.
  • Blank line. Pages run on as paragraphs. Use it when the page breaks do not matter.
  • Form feed character. A form feed (character code 12) ends each page. This is what the pdftotext command line tool writes, so scripts that split its output by page work here too.
  • Nothing. The pages follow each other with a single line break.

Honest limits

  • Scanned PDFs have no text. If a page is a photo or a scan, there is nothing to read. The tool tells you when most pages have no text layer. Run OCR first, then extract the text.
  • Columns can mix. In a two-column layout, lines from both columns are on the same baseline, so the tool reads them side by side. Keep layout spacing makes the columns visible; for clean text, copy each column from a PDF viewer instead.
  • Tables are text. A PDF has no table structure, only text at positions. Layout spacing lines up simple tables. For a real table, paste the text into a spreadsheet and split it into columns.
  • Odd letter spacing. Some PDFs place every letter on its own, with gaps that look like spaces. Check names, codes and numbers in the result.
  • Password-protected files. Remove the password in a PDF viewer first.

Plain text or Markdown?

Plain text is the right output when the text goes into a form, a spreadsheet, a translation tool, a script or a word count. When you want the headings and lists kept as structure, for a help center or a knowledge base, use PDF to Markdown instead: it marks larger text as headings and bullets as list items.

To see how much of a model's context the text uses, paste it into the token counter. And if the PDF is a product manual or a policy your customers ask about, Paperlink AI can answer their questions from the PDF itself, and says when it does not hold the answer instead of guessing.

Frequently asked questions

How is PDF to text different from PDF to Markdown?

PDF to text adds no marks: no # for headings and no - for lists. Instead you control the line breaks and the page separators, and you can copy one page at a time. Use PDF to Markdown when you want headings and lists kept as structure.

Why are words in my PDF text joined or split?

A PDF stores words as pieces placed on the page, not as sentences. The tool adds a space when the gap between two pieces is wider than 15% of the font size. Some PDFs space letters in ways that break this rule, so check names and numbers.

What does the form feed page separator do?

It puts the form feed character (code 12) at the end of each page, which is what the pdftotext command line tool does. Scripts that split pdftotext output by page also work with this text.

Why does my PDF give no text?

The PDF is probably scanned: each page is an image, with no text layer. The tool shows how many pages have no text. Run OCR (text recognition) on the file first, for example in a PDF editor, then extract the text.

How do I keep a table from a PDF in columns?

Select Keep layout spacing. Wide gaps between words stay as runs of spaces, so simple tables line up in a monospace font. For a table you want to edit, paste the text into a spreadsheet and split the columns there.

Is the PDF sent to a server for text extraction?

No. pdf.js reads the file in your browser, up to 50 MB and 500 pages. The file is not uploaded, and closing the tab removes it.

Newsletter

Support notes, once a month.

One email with what we learn about help centers, honest AI answers and support teams. Unsubscribe at any time.

We use your email only for this newsletter. See the Privacy Policy.