Converting a Spanish PDF to EPUB
Updated:
Spanish text converts cleanly when the PDF has real Unicode text: accents, ñ, «» quotes and inverted ¿? marks come through unchanged and the EPUB is tagged as Spanish. On a 50-page Spanish Wikipedia article our 8-gram recall is 0.941, below pdf_oxide's 0.963.
Original and result
Accented letters, ñ, «» and “” quotes, inverted question and exclamation marks, dialogue dashes and superscript reference calls, set in justified text.


Download source PDF Download the sample EPUB
What the engine does with Spanish text
The engine reads the characters the PDF stores and keeps them as they are: á, é, í, ó, ú, ü, ñ, «», ¿ and ¡ need no special handling when the PDF has a Unicode map. Ligatures (fi, fl) are normalised to plain letters only inside the blocks where they appear.
The book language is detected from the script and common words (de, la, que, el…) and written to the EPUB as es, so reading apps pick Spanish hyphenation and dictionaries.
What the sample shows
Pages 8 and 9 of the article: plain paragraphs with «» and “” quotes, accented names and two reference calls. The paragraph that runs from page 8 to page 9 is joined into one.
Source and licence
- Document
- Wikipedia (Spanish): Don Quijote de la Mancha
- Licence
- CC BY-SA 4.0 (text); images under their own licences
- Pages
- 50
- Traits
- text PDF, one column, images, Spanish
Wikipedia contributors, “Don Quijote de la Mancha”, Spanish 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 8–9 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
- 50
- Time
- 1.4 s
- Peak memory
- 66 MB
- Language detected
- es
- Chapters
- 13, from the article's headings
- Images kept
- 46
- Quality warnings
- none
| Engine | 8-gram recall |
|---|---|
| EpubCC engine (EPUB output) | 0.941 |
| EpubCC engine (plain text) | 0.941 |
| pdf_oxide · extract_text | 0.963 |
| pdf_oxide · to_plain_text (XY-cut) | 0.963 |
| pdf_oxide · Markdown | 0.857 |
| PDFium · text().all() | 0.945 |
| OpenDataLoader PDF (local mode) | 0.954 |
| pdftotext (Poppler) | 0.944 |
Limitations we observed
- pdf_oxide extract_text (0.963) and OpenDataLoader (0.954) have a higher 8-gram recall than our engine (0.941) on this document.
- In the sample, a line with a superscript «[cita requerida]» was split in three: «VI duque», then «y», then «de Béjar grande de España». The words are all there but out of order.
- Images that float beside the text break the paragraph they interrupt (see the text-wrapped-around-images case); the pages shown here have none.
- Wikipedia references leave out tables and infoboxes, so precision is low for every engine.