Я должен был сделать это для файла PDF один раз, и это было результатом (используя pdftohtml от poppler):
#!/bin/bash
pwddir="`pwd`"
tmpdir="`mktemp -d`"
pdftohtml -enc UTF-8 -noframes -p -nomerge -nodrm -q "$1" "$tmpdir"/index
cd "$tmpdir"
sed -e :a -e '$!N;s/\n/ /;ta' \
-i index.html
sed -e 's@ @ @g' \
-e 's@<hr>@ @g' \
-e 's@<br/>\s*<br/>@</p><p>@g' \
-e 's@<br/>@ @g' \
-i index.html
tidy -utf8 -i -wrap 9999999 -m index.html
sed -e 's@<a name="[^"]*"></a>@@g' \
-i index.html
rm "$pwddir"/"$1".zip
zip "$pwddir"/"$1".zip *
Поток почтовый индекс в Калибр и преобразовать в EPUB. Отфильтруйте все свойства CSS (такие как цвета, шрифты).
Каждый файл PDF отличается - нет окончательного решения. Вышеописанное сработало для одного конкретного случая - вы должны ослабить pdftohtml / pdftotext, а затем настроить вывод в соответствии с вашими потребностями.
Если это не поможет, и вам придется прибегнуть к OCR, мне повезло с клинописью. Но также попробуйте tesseract, ocrad, gocr. Однако все это требует ручного труда для хорошего результата.