2016-03-20 6 views
0

Я пытаюсь преобразовать PDF-файлы в текстовые файлы. Я использую эту команду, чтобы выполнить преобразование:Ghostscript textwriter сохраняет пустые строки

gs -dBATCH -dNOPAUSE -sDEVICE=txtwrite -sOutputFile=output.txt input.pdf 

Ghostscript версии 9.07.

Я получаю весь текст, указанный в PDF. Я хотел бы сохранить пустые строки в текстовом файле, если это возможно.

Благодаря

+0

Как правило, в формате PDF * нет пустых строк. Даже понятие «строка» довольно широк - спецификации позволяют выделять последовательность текста на одной строке, но также позволяет «любую» позицию x и y для любого текста. Для достижения такой цели вы должны сравнить позицию y каждой «линии» и решить, достаточно ли расстояния дистанционно, чтобы считать «пустым». – usr2564301

ответ

1

Вы должны обновить, текущая версия Ghostscript является 9,18 и 9,19 будет выпущен в ближайшее время. Каждая из промежуточных версий включает исправления для устройства txtwrite.

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

Это действие по умолчанию в текущей версии txtwrite, поэтому вы должны получить это уже, если только вы не выбрали другой TextFormat.

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