Как преобразовать PDF в формат электронной книги

Необходимо создать удар с лучшим бизоном (yacc) на хосте. Bash использует yacc грамматические правила, и только бизон GNU сгенерирует корректный код парсинга для сборки Bash.

8
27.04.2013, 00:19
3 ответа

Необходимо попробовать pdftotext (существует в соответствии с Ubuntu пакета poppler-utils). Это - преобразователь командной строки. Это предполагает, что PDF имеет текст и не состоит из изображений только.

Если файл PDF состоит из изображений (без информации о OCR), необходимо пойти для решения OCR, которое намного медленнее.

Я успешно использовал метод OCR также на тексте PDF, который был скремблирован (путем расположения отдельных символов на странице нелинейным способом). Затем Вы используете, например. pdftoppm получить отдельные изображения страниц и OCR они.

6
27.01.2020, 20:11

Я обычно использую Калибр, для преобразования из различных форматов (epub, mobi, и PDF). Это довольно просто для преобразования с ним, вот снимок экрана, существуют другие и видео учебное руководство также.

снимок экрана

   ss of calibre

6
27.01.2020, 20:11
  • 1
    Какая часть "никакой калибр" не неясен? –  mlp 28.04.2013, 09:26
  • 2
    Когда отвечают на вопросы на любом сайте SE, Вы обслуживаете и OP и любого, который находит этот поток Вопросов и ответов в будущем. Этот ответ предназначен для покрытия всех оснований для тех людей. Также Калибр мог бы быть наилучшим вариантом, возможно, OP имел ошибочную версию, ИЛИ это было неправильно сконфигурировано. Я использовал его десятки времен, и это делает прекрасное задание преобразования. –  slm♦ 28.04.2013, 14:02

Я должен был сделать это для файла 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 *

Подайте zip к Калибру и преобразуйте в EPUB. Отфильтруйте все свойства CSS (такие как цвета, шрифты).

Каждый файл PDF отличается - нет никакого категорического решения. Вышеупомянутое работало на один конкретный случай - Вы имеете к слабому pdftohtml/pdftotext и затем настраиваете вывод для установки потребностям.

Если это перестало работать, и необходимо обратиться к OCR, у меня была некоторая удача с клинообразным знаком. Но также и попробуйте tesseract, ocrad, gocr. Однако все те требуют физического труда для хорошего результата.

1
27.01.2020, 20:11

Теги

Похожие вопросы