2014-01-22 5 views
3

Как мы можем прочитать содержимое файла pdf с помощью команды vim в терминале? Я пробовал использовать pdftk, распаковывая его, но все же его не работает для меня. Есть ли другой способ расшифровать или декодировать PDF, чтобы мы могли читать терминал в любом стиле Linux с помощью vim.Прочитать содержимое pdf с помощью vim

+1

на официальном сайте vim, определение vim ясно: 'vim editor' Это не программа для чтения PDF, это не MS- Word Reader. Конечно, вы можете написать PDF-ридер с другим языком, например Java с itext lib, а в vim назвать этот инструмент, но это неправильный способ использовать vim. Мои 2 цента. – Kent

+0

@ Kent, но посмотрите, что мы можем открывайте что-нибудь с помощью vim, но главное, что мы не сможем его прочитать, потому что он находится в зашифрованном формате. Поэтому мой вкус заключается в его расшифровке, так что мы сможем понять, что PDF имеет при использовании vim. Главное, что он не должен потерять что-либо при расшифровке. Если вы хотите получить мой вопрос, пожалуйста, посетите этот http://www.pdflabs.com/docs/pdftk-cli-examples/, есть способ распаковать и выполнить этому комманду d мы можем использовать vim или emacs для чтения pdf. –

+0

pdftk (или qpdf или cpdf, которые также могут распаковывать потоки контента, помимо прочего) не увеличивают двоичные потоки (например, ASCII85Encode), такие как изображения, шрифты и т. Д. К сожалению. Поэтому большинство PDF-файлов после un-compression по-прежнему содержат двоичные данные и не подходят для текстового редактора. Возможно, вам нужно взглянуть на редакторов COS-структуры/исследователей (браузер PoDoFo, браузер Enfocus PDF, iText RUPS (они все бесплатны) и т. Д.). – user2846289

ответ

6

Если вы хотите прочитать текст в формате pdf, вы можете попробовать команду pdftotext, хотя она не всегда будет красивой. Если вы хотите Vim, чтобы открыть файлы в формате PDF в Reader PDF вы можете использовать что-то в вашем .vimrc как

au BufRead *.pdf sil exe "!xdg-open " . shellescape(expand("%:p")) | bd | let &ft=&ft | redraw! 
+0

Спасибо, но я думаю, что вы не получили моего вопроса. На самом деле, я хочу расшифровать или декодировать PDF-файл, я есть. Когда я попытался использовать vim непосредственно, чтобы прочитать этот pdf-файл, он дает что-то в зашифрованном формате, мы не можем его прочитать напрямую. Поэтому я хочу расшифровать или декодировать его, чтобы все, что содержал pdf, мы сможем понять. –

+0

Затем вы должны сначала использовать pdftk для расшифровки документа. Я не уверен, о чем вы спрашиваете, потому что у vim нет встроенного в него pdftk или встроенного в него PDF-ридера. – Conner

2

Некоторое текстовое содержимое в формате pdf можно извлечь с помощью pdf2txt, а затем загрузить в vim. Конечно, вы потеряете большую часть форматирования, графики и т. Д.

3

Этот вопрос более или менее дубликат this one.
Однако после ответов @Conner и @Eric, полезная утилита pdftotext - это рекомендуемый подход, если вы только интересуетесь текстовым контентом.

Возможный подход к pdftotext можно найти, например. here.
Для упрощения этих шагов существует довольно новый плагин Vim. Этот плагин можно найти here или here

Вы также можете написать несколько ftplugin выступает в качестве препроцессора для извлечения текста данного PDF. Тем не менее, вы не сможете ничего изменить в pdf с предлагаемыми инструментами.