Converting a German PDF to EPUB
Updated:
German text converts cleanly when the PDF stores real Unicode text: ä, ö, ü, ß and the low-high „…“ quotes come through unchanged and the EPUB is tagged as German. On an 86-page Wikipedia article our 8-gram recall is 0.845, below pdf_oxide's 0.877.
Original and result
Umlauts and ß, „…“ quotation marks, long compound words and hyphenated pairs such as «Freiheits- und Brüderlichkeitsideale».


Download source PDF Download the sample EPUB
What the engine does with German text
Characters are kept as the PDF stores them. A hyphen at the end of a line is removed only when the PDF marks it as a soft line-end hyphen or when a lowercase letter follows, so suspended hyphens («Freiheits- und …») survive.
The language is detected as de and written to the EPUB, so reading apps use German hyphenation for long compounds.
What the sample shows
Pages 19 and 20 of the article: Goethe and the French Revolution, dense with „…“ quotes, ß and reference calls, and a section heading that becomes a heading in the EPUB.
Source and licence
- Document
- Wikipedia (German): Johann Wolfgang von Goethe
- Licence
- CC BY-SA 4.0 (text); images under their own licences
- Pages
- 86
- Traits
- text PDF, one column, German
Wikipedia contributors, “Johann Wolfgang von Goethe”, German Wikipedia, PDF from the Wikimedia REST API; text licensed CC BY-SA 4.0, images under their own licences. Pages shown unmodified; the EPUB is our conversion, under the same licence.
Settings used
- Engine: EpubCC engine at commit 3b74b26, the binary that generated the images and the sample (2026-11-04).
- Pages: the whole document for the figures; pages 19–20 for the images and the sample EPUB.
- Benchmark figures: the published run of 2026-11-03 (engine commit c953279).
- Options: none. The engine has no per-document settings yet; the same defaults apply to every file.
Validation and results
EPUBCheck EPUBCheck on our EPUB: 0 errors, 0 warnings.
EPUBCheck 5.4.0 on the downloadable sample: 0 errors, 0 warnings (checked 2026-11-04).
- Pages
- 86
- Time
- 2.5 s
- Peak memory
- 87 MB
- Language detected
- de
- Chapters
- 11, from the article's headings
- Images kept
- 42
- Quality warnings
- none
| Engine | 8-gram recall |
|---|---|
| EpubCC engine (EPUB output) | 0.845 |
| EpubCC engine (plain text) | 0.848 |
| pdf_oxide · extract_text | 0.877 |
| pdf_oxide · to_plain_text (XY-cut) | 0.877 |
| pdf_oxide · Markdown | 0.758 |
| PDFium · text().all() | 0.854 |
| OpenDataLoader PDF (local mode) | 0.862 |
| pdftotext (Poppler) | 0.853 |
Limitations we observed
- pdf_oxide extract_text (0.877) and OpenDataLoader (0.862) have a higher 8-gram recall than our engine (0.845) on this document.
- A real hyphen at the end of a line followed by a capital letter can be lost: in an EU regulation we converted, «Online-» + «Desinformation» became «OnlineDesinformation». The pages shown here have no such break.
- Wikipedia references leave out tables and infoboxes, so precision is low for every engine.