pdfbeads будет выводить только одну страницу

Следуя инструкциям на этой странице

Я беру документ djvu, проверяю его на наличие признаков повреждения, открывая его в djvulibre, и он проверяется в порядке. Скопируйте его в мою папку тестирования и переименуйте его

Выполнить

djvu2hocr test.djvu | sed 's/ocrx/ocr/g' > test.html

ddjvu -format=tiff test.djvu test.tif

Продолжить, чтобы открыть TIF с помощью evince, и он проверяет все страницы доступны для просмотра.

Запустите pdfbeads

pdfbeads -o test.pdf

и получите следующую ошибку:

/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead. Prepared data for processing test.tif Warning: test.tif contains multiple images, but only the first one is going to be used JBIG2 compression complete. pages:1 symbols:2080 log2:12 Processed test.tif

PDF открывается нормально, но это только одна страница и OCR работает.

Вот ссылка на скопированные / сгенерированные файлы

Есть предложения?

2
задан 13 April 2017 в 15:23

2 ответа

pdfbeads ожидает одностраничный TIFF-файл и одностраничный html-файл hOCR для каждой страницы в документе. Если он может найти только один файл TIFF, он выведет только одну страницу.

Разделить файл TIFF с помощью tiffsplit. hocrsplit из hocr-tools могут разделить ваш html. Мне никогда не нужно было его использовать.

Я бы не стал беспокоиться о предупреждении iconv. Ruby всегда делает это с помощью pdfbeads. Причина здесь: предупреждение об устаревании iconv с ruby ​​1.9.3 - Переполнение стека

0
ответ дан 13 April 2017 в 15:23

Я уже не могу вспомнить, написал ли я следующую модификацию к инструкциям, которые вы опубликовали выше, или я нашел их где-то еще (хотя поиск в Google не дает релевантных результатов), я использовал для многих следующее месяцев, чтобы конвертировать целые файлы DJVU в формат PDF.

f='file.djvu'
pg=$(djvused -e 'n' $f)
for i in $(seq 1 $pg)
do
    djvu2hocr -p $i $f | sed 's/ocrx/ocr/g' > `printf "pg%04d.html" $i`
    ddjvu -format=tiff -page=$i $f `printf "pg%04d.tiff" $i`
done
pdfbeads -o ${f/djvu/pdf};

Это создает отдельный TIFF (и соответствующий HTML-файл) для каждой страницы, а затем объединяет все вместе, используя pdfbeads. Обратите внимание, что если по какой-то причине у вашего djvu есть более 9999 страниц, вам нужно изменить экземпляры% 04 на что-то большее, например% 05.

0
ответ дан 13 April 2017 в 15:23

Другие вопросы по тегам:

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