Вот один из способов, который потребует некоторых не очень распространенных инструментов:
- ocrodjvu
- pdfbeads , у которого есть свои требования, которые можно найти в Google
Мы можем использовать djvu2hocr
команду (из ocrodjvu
пакета), чтобы извлечь скрытый текстовый слой из файла DjVu (он не выполняет никакого распознавания текста или чего-либо подобного, он просто извлекает текстовый слой с геометрией), то есть:
djvu2hocr -p 10 sample.djvu | sed 's/ocrx/ocr/g' > pg10.html
sed
вмешательство исправляет имена классов в выходном hOCR (который является простым HTML-файлом)
Теперь мы извлекаем страницу DjVu в формат TIFF с помощью:
ddjvu -format=tiff -page=10 sample.djvu pg10.tif
так что мы заканчиваем этим файлом в нашей рабочей папке:
sample.djvu
pg10.html
pg10.tif
Вот где pdfbeads
вступает в игру, и мы просто выполнить:
pdfbeads -o pg10.pdf
затем эта изящная программа позаботится обо всем, что находится внутри этой папки (файлы HTML и TIFF с одинаковым базовым именем), и создаст выходной файл PDF с некоторыми побочными продуктами:
sample.djvu
pg10.html
pg10.tif
pg10.jbig2
pg10.pdf
pg10.sym
который идентичен входному файлу DjVu и имеет текстовый слой внутри:
Сводка комментариев:
В длинных комментариях ниже обсуждается представление небольших изображений со страницы документа DjVu в виде отдельных объектов, что нелегко сделать возможным, поскольку страница документа DjVu сама по себе представляет собой одно изображение с необязательным текстовым слоем, без «информации» о небольших изображениях в качестве отдельных объектов. Если документ DjVu имеет цветные изображения, то они обычно помещаются на фоновый слой; в этом случае пользователь может воспользоваться такими инструментами, как ddjvu
(извлечение только фонового слоя) и imagemagick
(автообрезка), чтобы выводить только изображения вместо целого холста, но его нельзя автоматизировать для создания вывода PDF
Другой более разумный, но более медленный подход - использование обычных инструментов OCR GUI. gscan2pdf
(> 1.0) предлагается в качестве возможного кандидата на ПК с Linux