Ghostscript для преобразования PDF в текст и сохранения формата таблицы файлов PDF

У меня есть этот код, который преобразует PDF в текстовый файл:

gswin32c -dBATCH -dNOPAUSE -dSAFER -dDELAYBIND -dWRITESYSTEMDICT 
-dSIMPLE -sDEVICE=txtwrite -dTextFormat=2 -dFirstPage=1 -dLastPage=1 
-sOutputFile=C:\out.txt C:\in.pdf

Работает почти нормально, единственное, что не сохраняет форматирование таблицы PDF.

Пример:

В файле PDF:

Type    From        Name             Name2                   Code         Week
Regular 30/03/15    KNOWLES, BEN     HOOT KNOWLES, ANGELA    367-739-746  80.00       
Regular 30/03/15    RICHARDS, COLE   ROBERT HARRIS, BRADIE   401-844-307  108.00      
Regular 30/03/15    SKEELS, MATT     BISHOP, JASON GREGSON   413-980-291  112.00

После преобразования его в текстовый файл текст переносится следующим образом:

Type From Name Name2 Code Week
Regular30/03/15KNOWLES, BENHOOT KNOWLES, ANGELA367-739-74680.00       
Regular30/03/15RICHARDS, COLEROBERT HARRIS, BRADIE401-844-307108.00      
Regular30/03/15SKEELS, MATTBISHOP, JASON GREGSON413-980-291112.00

Мне нужно, чтобы сохранить его форматирование. Есть идеи, как сохранить форматирование?

я использую Ghostscript gswin32c на машине windows 7, версия 9.16.

Кроме того, я открыт для предложений для других способ архивации.

ура

2 ответа

pdftotextотpoppler-utilsс-layoutвариант работает приемлемо хорошо для этого

В PDf нет "табличного формата", просто последовательность текста и позиций. Один из возможных форматов вывода для txtwrite пытается создать текстовый файл Unicode, в котором интервал воссоздается пробелами. Обратите внимание, что здесь предполагается использование шрифта с фиксированным шагом, поэтому он не будет работать хорошо, если вы его не используете.

Без просмотра входного файла PDF на самом деле невозможно догадаться, почему это не дает результата, как вы ожидаете.

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

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