Jak przekonwertować dwukolumnowy PDF na EPUB?
Zaktualizowane:
Użyj konwertera, który wykrywa kolumny przed połączeniem linii w akapity, aby lewa kolumna była czytana od góry do dołu, a następnie prawa, zamiast czytać każdą linię prosto przez stronę. EpubCC robi to, dzieląc każdą stronę wzdłuż białych luk między kolumnami, zanim odbuduje tekst.
Układ stały vs. tekst reflowable


Dlaczego dwie kolumny są błędne
Naivny konwerter odczytuje stronę linia po linii od lewej do prawej, więc łączy pierwszą linię lewej kolumny z pierwszą linią prawej kolumny. W wyniku tego powstają zdania, które przeplatają się między dwoma niepowiązanymi tekstami: najczęstsza awaria w pracach akademickich, czasopismach i Federal Register.
Jak EpubCC odczytuje kolumny
- Silnik odnajduje kolumny każdej strony na podstawie jej układu i odczytuje jedną do końca przed nastepną.
- Szeroka przestrzeń wewnątrz pojedynczej linii, taka jak "2.1 Title", nie jest mylona z kolumną.
- Nagłówki i numery stron w marginesach są pomijane, więc nigdy nie znajdują się w środku akapitu, który przechodzi z jednej kolumny do drugiej.
- Przypisy na dole kolumny stają się powiązanymi notatkami na końcu rozdziału, zamiast przerywać tekst.
- Obrazy są umieszczane jako część regionu, w którym się znajdują, więc zachowują kolejność czytania.
- Akapit, który kontynuuje od dołu jednej kolumny do góry następnej, jest ponownie łączony, gdy zdanie się rozwija.
Sprawdź wynik
Układy, które łączą jedną i dwie kolumny na tej samej stronie, pola i przypisy, są trudną częścią. Możesz przekonwertować swój własny plik za darmo i przeczytać wynik, a benchmark obejmuje prace w dwóch kolumnach oraz dokument z rejestru federalnego w trzech kolumnach zmierzony pod kątem ciągłości.
Dowody z benchmarku
| Silnik | Przywołanie 8-gramowe |
|---|---|
| EpubCC engine (EPUB output) | 0.845 |
| EpubCC engine (plain text) | 0.829 |
| pdf_oxide · extract_text | 0.740 |
| pdf_oxide · to_plain_text (XY-cut) | 0.694 |
| pdf_oxide · Markdown | 0.692 |
| PDFium · text().all() | 0.756 |
| OpenDataLoader PDF (local mode) | 0.734 |
| pdftotext (Poppler) | 0.755 |
| Calibre · ebook-convert (EPUB output) | 0.726 |
| EpubCC engine (EPUB, same extractor as Calibre) | 0.845 |
| Dokument | EpubCC engine (EPUB output) | EpubCC engine (plain text) | pdf_oxide · extract_text | pdf_oxide · to_plain_text (XY-cut) | pdf_oxide · Markdown | PDFium · text().all() | OpenDataLoader PDF (local mode) | pdftotext (Poppler) | Calibre · ebook-convert (EPUB output) | EpubCC engine (EPUB, same extractor as Calibre) |
|---|---|---|---|---|---|---|---|---|---|---|
| OLMo paper (arXiv 2402.00838) | 0.893 | 0.891 | 0.854 | 0.273 | 0.719 | 0.761 | 0.820 | 0.781 | 0.640 | 0.892 |
| Mistral 7B paper (arXiv 2310.06825) | 0.777 | 0.774 | 0.767 | 0.778 | 0.800 | 0.872 | 0.859 | 0.821 | 0.779 | 0.774 |
| Federal Register document 2026-22443 | 0.857 | 0.853 | 0.334 | 0.035 | 0.339 | 0.859 | 0.801 | 0.835 | 0.121 | 0.851 |
Napraw pomieszane kolumny
Do 3 całych książek dziennie za darmo. Nie potrzeba konta.