Как извлечь значительный текстовый контент из документа LaTeX - PullRequest
5 голосов
/ 29 января 2011

Мне нужно извлечь текстовый контент из моего дипломного документа, написанного на LaTeX, для автоматической проверки на плагиат. Я знаю только о «черновом» варианте и этого мало.

Я должен опустить:

  • изображения
  • таблицы и другие рисунки,
  • уравнения,
  • подписи и сноски.

Было бы также неплохо удалить все ссылки. Вывод должен быть простым (в кодировке UTF-8) текстовым файлом.

Есть ли прямой способ сделать это? Мне не очень нравится копировать его вручную постранично.

Ответы [ 5 ]

1 голос
/ 04 февраля 2011

Несмотря на упоминание о Detex, существует еще один проект, направленный на его улучшение. Он называется opendetex , посмотрите!

1 голос
/ 02 февраля 2011

Обычно требуется, чтобы некоторая обработка LaTeX была выполнена для текста, например, у вас есть

\ newcommand * {\ SO} {StackOverflow \ index {StackOverflow} \ xspace}

...

Я трачу много времени на \ SO, бла-бла ....

Простая фильтрация текстового абзаца здесь не даст текст, подобный ожидаемому результату, когдаон содержит любые макросы.

Поэтому попытка извлечь что-либо непосредственно из файла * .tex обычно оставляет желать лучшего из результата.Поэтому обычно лучше работать с выходом из латексной обработки.Я бы порекомендовал конвертировать латекс в HTML, а затем из HTML в текст.Возможно, вам понадобится ручная очистка, но я думаю, что это должно быть относительно близко.

1 голос
/ 29 января 2011

Вы можете попробовать использовать пакет комментариев (или одну из дюжины альтернатив), чтобы превратить уравнение, рисунок, таблицу и т. Д. В среду комментирования и \ renewcommand \ footnote [1] {} для удаления сносок. \ pagestyle {empty} должен удалять заголовки страниц и т. д., поэтому запуск pdftotext для результата должен приближаться к тому, что вы хотите.

1 голос
/ 01 февраля 2011

Вы можете использовать конвертер документов, например pandoc , или преобразовать выходной PDF-файл в обычный текст, например Калибр .

1 голос
/ 29 января 2011

Да: untex , простой C-скрипт.Вы также можете посмотреть на detex .

...