Menu

Home

q83

PDF Reader TTS Mova

PDF Reader TTS Mova is a desktop application written in Python using PySide6. It combines a PDF viewer with text-to-speech (TTS), allowing users to read PDF documents while listening to synchronized speech.

Features

  • Open and display PDF documents.
  • Extract text directly from PDF pages.
  • Read text aloud using eSpeak NG.
  • Highlight the currently spoken sentence.
  • Navigate between PDF pages.
  • Adjustable reading speed.
  • Multiple language support.
  • Read either the entire page or a selected text fragment.

OCR Support

Some PDF files contain only scanned images and do not include searchable text. In such cases, OCR (Optical Character Recognition) must be performed before opening the document in the application.

Check whether a PDF contains text

pdffonts input.pdf

If no fonts are listed, the document is most likely a scanned PDF.

Install OCR tools

sudo apt install ocrmypdf tesseract-ocr tesseract-ocr-pol

For English and Polish documents:

ocrmypdf --force-ocr -l pol+eng input.pdf output.pdf

After OCR processing, verify that text has been embedded:

pdffonts output.pdf

The generated output.pdf can now be opened in PDF Reader TTS Mova , and the extracted text will be available for synchronized text-to-speech playback.

Requirements

  • Python 3
  • PySide6
  • PyMuPDF (fitz)
  • eSpeak NG
  • OCRmyPDF (optional, for scanned PDFs)
  • Tesseract OCR (optional)

Usage

  1. Open a PDF document.
  2. If the document is scanned, process it with OCR first.
  3. Click Play to start reading.
  4. Optionally select a fragment of text to read only the selection.
  5. Use Pause, Stop, or Next Sentence to control playback.

Project Members:


Monday.com Logo