Extract Text from PDF Online
Extract the text layer of a PDF, or recognize text in scanned pages with OCR, and save it as plain text.
For scanned PDFs, choose the document's language before uploading. Changing it later reads the current file again.
Choose PDF File or Drag & Drop Here
Extracts text and supports OCR for scanned image PDFs
Extracting text from PDF...
filename.pdf
Original Size: 0 MB | 0 Pages
Extracted Text Content
CMap Font Decoding
Uses PDF.js character maps to decode many East Asian and custom-encoded fonts. PDFs with incomplete font data can still produce incorrect characters.
OCR for Scanned Pages
Pages with almost no extractable text are read with Tesseract.js OCR. Accuracy depends on scan quality, language, and layout.
Browser-Based Processing
Documents are parsed locally inside your browser memory.
How to use
The tool first reads the text layer stored in the PDF. When a page has almost no text, as in a scanned document, that page is rendered as an image and recognized with OCR in your browser. The OCR engine and its language data are downloaded from leedybox.com the first time OCR runs; your PDF itself is not uploaded.
- Choose the OCR language before you add the file, so that scanned pages are read with the right alphabet. It is preset for the language of this page.
- Click the drop zone or drag a PDF file onto it. Extraction starts at once and works through the pages one by one.
- Pages with a text layer are read directly. A page with almost no text, such as a scan, is drawn as an image and recognised with OCR, which takes longer; the progress bar shows which page is being read.
- Check the result in the text box. Each page starts with a line such as --- Page 1 ---.
- Click "Copy Text" or "Save as .TXT" to keep the result, or "Change File" to read another PDF.
Frequently asked questions
Why does extracted text sometimes look garbled?
Some PDFs store characters with custom font encodings. LeedyBox loads CMap tables to decode many of them, but fonts without a proper Unicode mapping can still produce incorrect characters. Check the result against the original document.
Does it work on scanned documents?
Yes. When a page has almost no text layer, the built-in Tesseract.js OCR engine recognizes the characters in the page image. Handwriting, low-resolution scans, unusual fonts, and languages not covered by the OCR language setting reduce accuracy.
Will tables and columns keep their layout?
Not exactly. The output is plain text, so tables, columns, and text boxes are flattened into lines, and the reading order can differ from what you see on the page.
Is my PDF uploaded?
No. The text is read in your browser. When a page needs OCR, the OCR engine and its language data are downloaded from leedybox.com, but your PDF is not sent anywhere.
Which OCR language should I choose for a document in two languages?
Choose the option with the document's main language; every option except "English only" also recognizes English. Text in a language that is not selected is often read as wrong characters.
Why is OCR slow?
Each scanned page is recognized one at a time in your browser, after the OCR engine and language data have been downloaded. A page can take several seconds or longer on a slower device, so a long scanned document needs patience.