Why does PDF-to-EPUB conversion break paragraphs?
Updated:
PDF-to-EPUB conversion breaks paragraphs because a PDF stores lines at fixed positions, not paragraphs, and a simple converter copies each line as it is. Rebuilding paragraphs needs the geometry of each line: gaps, indents, font changes and hyphens at line ends.
Fixed layout vs. reflowable text


Where the break comes from
When a PDF is made, the text is cut into lines to fit the page width. The paragraph itself is not recorded. Copying the lines into an EPUB keeps those cuts, so every line ends early on an e-reader.
How paragraphs are rebuilt
- Start a new paragraph only on a vertical gap, a size or weight change, a first-line indent or a line that ends early.
- Rejoin words split by a hyphen at the end of a line.
- Join a paragraph interrupted by a column or page break when the next part continues the sentence.
Evidence from the benchmark
| Engine | 8-gram recall |
|---|---|
| EpubCC engine (EPUB output) | 0.767 |
| EpubCC engine (plain text) | 0.765 |
| pdf_oxide · extract_text | 0.726 |
| pdf_oxide · to_plain_text (XY-cut) | 0.658 |
| pdf_oxide · Markdown | 0.653 |
| PDFium · text().all() | 0.746 |
| OpenDataLoader PDF (local mode) | 0.749 |
| pdftotext (Poppler) | 0.743 |
Fix broken paragraphs
Convert up to 5 pages free, no account needed.