Как распечатать обычный файл в pdf из командной строки

В gedit печать файла дает возможность печатать в файл, где файл можно сохранить в формате pdf. Как я могу сделать то же самое из командной строки?

31
задан 19 February 2011 в 12:53

82 ответа

Существует программа командной строки, которая может конвертировать между всеми поддерживаемыми форматами open / libre office под названием unoconv, поэтому, если вам нужно пакетное преобразование со сценарием, это пригодится.

sudo apt-get install unoconv Домашняя страница Unoconv
6
ответ дан 26 July 2018 в 21:43

У меня были некоторые проблемы с немецким Umlaute (ÄÖÜ) с вышеупомянутыми решениями. Или, в случае папок, полученный PDF не имеет текстового слоя.

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

wktmltopdf <textfile> <pdffile>

wkhtmltopdf может обрабатывать файлы UTF-8 (в отличие от подстрочного текста). Все проблемные символы, такие как ÄÖÜß и т. Д., Будут отображаться правильно.

2
ответ дан 26 July 2018 в 21:43
  • 1
    Это было исправлено в последней версии папок, которая позволяет выводить выбираемый pdf. См. [D0] github.com/dov/paps . – Dov Grobgeld 15 January 2018 в 13:03

без установки какого-либо из вышеупомянутых программ, можно просто сделать следующее с уже установленным cupsfilter:

cupsfilter foo.txt > foo.pdf

(для параметров и т. д., пожалуйста, обратитесь к страницам cupsfilter man :-))

12
ответ дан 31 July 2018 в 11:33
  • 1
    Единственный ответ здесь, который обрабатывал мои текстовые файлы UTF8 без проблем :) плюс проще сделать практически без зависимостей – Axel Advento 22 February 2017 в 19:25
  • 2
    Так просто, прекрасно. – Sigur 27 April 2018 в 16:53

ПРОСТОЙ ПУТЬ ENSCRIPT

sudo apt-get install cups-pdf enscript

Затем в этом случае выполните надпись в файле с ключом -P и описанием описания принтера.

sudo apt-get install cups-pdf enscript

enscript -B -PPDF test.txt

Принтер с описанием PDF был создан, когда вы установили cups-pdf, когда вы используете файл с этим принтером, ваш документ будет отправлен на принтер PDF и будет напечатан в файл, созданный как .pdf в каталоге / home / PDF, команда, указанная выше, напечатает текстовый файл test.txt в формате pdf в каталоге PDF.

sudo apt-get install unoconv

ПРОСТОЙ ЭНЦРИПТ ПУТЬ

Вы можете использовать unoconv в автономном режиме, это означает, что в отсутствие слушателя OpenOffice он начнет свой собственный:

sudo apt-get install unoconv

В каталоге, где находится ваш файл, запущен:

13
ответ дан 31 July 2018 в 11:33

Как указано выше, enscript является популярным способом преобразования текста в постскриптум, который затем может быть впоследствии преобразован в PDF. Аналогичным инструментом, который существует уже давно, является a2ps. Он имеет большое количество опций, включая размещение нескольких страниц на физической странице. Установите ap2s с помощью sudo apt-get install a2ps.

AFAIK, enscript и a2ps выполняют одну и ту же работу, но их интерфейс отличается и YMMV с каждым из них.

2
ответ дан 31 July 2018 в 11:33
  • 1
    Пример использования a2ps поможет. Опция --delegate, по-видимому, необходима для pdf, но справочная страница на самом деле не помогает. – nealmcb 14 March 2015 в 07:56

paps является лучшей альтернативой, чем enscript

paps file.txt | ps2pdf - output.pdf
4
ответ дан 31 July 2018 в 11:33
  • 1
    Добро пожаловать в Ask Ubuntu hwc! Хотя ваша почта отвечает на вопрос, всегда лучше включать больше информации. Например, почему paps является лучшей альтернативой? И если paps не установлен по умолчанию, какая команда для его установки? Вы всегда можете отредактировать свой ответ, нажав edit прямо под телом ответа. Благодаря! – Alaa Ali 1 September 2013 в 11:15

Существует программа командной строки, которая может конвертировать между всеми поддерживаемыми форматами open / libre office под названием unoconv, поэтому, если вам нужно пакетное преобразование со сценарием, это пригодится.

sudo apt-get install unoconv Домашняя страница Unoconv
6
ответ дан 31 July 2018 в 11:33

У меня были некоторые проблемы с немецким Umlaute (ÄÖÜ) с вышеупомянутыми решениями. Или, в случае папок, полученный PDF не имеет текстового слоя.

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

wktmltopdf <textfile> <pdffile>

wkhtmltopdf может обрабатывать файлы UTF-8 (в отличие от подстрочного текста). Все проблемные символы, такие как ÄÖÜß и т. Д., Будут отображаться правильно.

2
ответ дан 31 July 2018 в 11:33
  • 1
    Это было исправлено в последней версии папок, которая позволяет выводить выбираемый pdf. См. [D0] github.com/dov/paps . – Dov Grobgeld 15 January 2018 в 13:03

Вы можете использовать a2x

a2x - преобразовать текстовый файл Asciidoc в PDF, XHTML, HTML Help, ODF, manpage или обычный текст

. Чтобы установить a2x:

  sudo apt-get install asciidoc  

например:

  a2x -f pdf testfile.txt [  ! d1] 
5
ответ дан 31 July 2018 в 11:33

без установки какого-либо из вышеупомянутых программ, можно просто сделать следующее с уже установленным cupsfilter:

cupsfilter foo.txt > foo.pdf

(для параметров и т. д., пожалуйста, обратитесь к страницам cupsfilter man :-))

12
ответ дан 2 August 2018 в 03:54
  • 1
    Единственный ответ здесь, который обрабатывал мои текстовые файлы UTF8 без проблем :) плюс проще сделать практически без зависимостей – Axel Advento 22 February 2017 в 19:25
  • 2
    Так просто, прекрасно. – Sigur 27 April 2018 в 16:53

Как указано выше, enscript является популярным способом преобразования текста в постскриптум, который затем может быть впоследствии преобразован в PDF. Аналогичным инструментом, который существует уже давно, является a2ps. Он имеет большое количество опций, включая размещение нескольких страниц на физической странице. Установите ap2s с помощью sudo apt-get install a2ps.

AFAIK, enscript и a2ps выполняют одну и ту же работу, но их интерфейс отличается и YMMV с каждым из них.

2
ответ дан 2 August 2018 в 03:54
  • 1
    Пример использования a2ps поможет. Опция --delegate, по-видимому, необходима для pdf, но справочная страница на самом деле не помогает. – nealmcb 14 March 2015 в 07:56

Вы можете использовать a2x

a2x - преобразовать текстовый файл Asciidoc в PDF, XHTML, HTML Help, ODF, manpage или обычный текст

Для установки a2x:

sudo apt-get install asciidoc

, например:

a2x -f pdf testfile.txt
5
ответ дан 2 August 2018 в 03:54
  • 1
    По сравнению с другими ответами, pandoc plus texlive производит плохую производительность (не соблюдая новые строки), и слишком запутан и запутан для загрузки. Требуется больше пакетов, потянув в тексили, рекомендуемые тексты-шрифты, рубины и т. Д. Например. Я получаю pandoc: Unknown writer: pdf до тех пор, пока не установлю texlive-latex-base. Это верно. См. [D0] github.com/jgm/pandoc/issues/1155 Затем я получил сообщение об ошибке, отсутствующей в списке, а затем о url.sty и т. Д. – nealmcb 14 March 2015 в 07:54

ПРОСТОЙ ПУТЬ ENSCRIPT

sudo apt-get install cups-pdf enscript

Затем в этом случае выполните надпись в файле с ключом -P и описанием описания принтера.

sudo apt-get install cups-pdf enscript

enscript -B -PPDF test.txt

Принтер с описанием PDF был создан, когда вы установили cups-pdf, когда вы используете файл с этим принтером, ваш документ будет отправлен на принтер PDF и будет напечатан в файл, созданный как .pdf в каталоге / home / PDF, команда, указанная выше, напечатает текстовый файл test.txt в формате pdf в каталоге PDF.

sudo apt-get install unoconv

ПРОСТОЙ ЭНЦРИПТ ПУТЬ

Вы можете использовать unoconv в автономном режиме, это означает, что в отсутствие слушателя OpenOffice он начнет свой собственный:

sudo apt-get install unoconv

В каталоге, где находится ваш файл, запущен:

13
ответ дан 2 August 2018 в 03:54

Существует программа командной строки, которая может конвертировать между всеми поддерживаемыми форматами open / libre office под названием unoconv, поэтому, если вам нужно пакетное преобразование со сценарием, это пригодится.

sudo apt-get install unoconv Домашняя страница Unoconv
6
ответ дан 2 August 2018 в 03:54

У меня были некоторые проблемы с немецким Umlaute (ÄÖÜ) с вышеупомянутыми решениями. Или, в случае папок, полученный PDF не имеет текстового слоя.

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

wktmltopdf <textfile> <pdffile>

wkhtmltopdf может обрабатывать файлы UTF-8 (в отличие от подстрочного текста). Все проблемные символы, такие как ÄÖÜß и т. Д., Будут отображаться правильно.

2
ответ дан 2 August 2018 в 03:54

paps - лучшая альтернатива, чем enscript

  paps file.txt |  ps2pdf - output.pdf  
4
ответ дан 2 August 2018 в 03:54

У меня были некоторые проблемы с немецким Umlaute (ÄÖÜ) с вышеупомянутыми решениями. Или, в случае папок, полученный PDF не имеет текстового слоя.

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

  wktmltopdf & lt; textfile & gt;  & Lt; pdffile & GT;   

wkhtmltopdf может обрабатывать файлы UTF-8 (в отличие от текста). Все проблемные символы, такие как ÄÖÜß и т. Д., Будут отображаться правильно.

2
ответ дан 4 August 2018 в 19:57

Существует программа командной строки, которая может конвертировать между всеми поддерживаемыми форматами open / libre office под названием unoconv , поэтому, если вам нужно пакетное преобразование со сценарием, это пригодится.

  sudo apt-get install unoconv  
6
ответ дан 4 August 2018 в 19:57

ПРОСТОЙ ЭНЦРИПТНЫЙ ПУТЬ

sudo apt-get install cups-pdf enscript

Затем запустите файл в вашем файле с помощью переключателя -P и описание принтера PDF в этом случае.

enscript -B -PPDF test.txt

Принтер с описанием PDF был создан при установке cups-pdf, когда вы используете файл с этим принтером, ваш документ будет отправлен на принтер PDF и будет напечатан в файл, созданный как .pdf в каталоге / home / PDF, команда выше распечатает текстовый файл test.txt в формате pdf в в каталоге PDF.

ИСПОЛЬЗОВАНИЕ UNOCONV

sudo apt-get install unoconv

Вы можете использовать unoconv в автономном режиме, это означает что в отсутствие слушателя OpenOffice он начнет свой собственный:

В каталоге, где находится ваш файл, запущен:

unoconv -f pdf test.txt

, это создаст красивый pdf-файл test.txt. в текущем каталоге

13
ответ дан 4 August 2018 в 19:57

Вы можете использовать a2x

a2x - преобразовать текстовый файл Asciidoc в PDF, XHTML, HTML Help, ODF, manpage или обычный текст

. Чтобы установить a2x:

  sudo apt-get install asciidoc  

например:

  a2x -f pdf testfile.txt [  ! d1] 
5
ответ дан 4 August 2018 в 19:57

paps - лучшая альтернатива, чем enscript

  paps file.txt |  ps2pdf - output.pdf  
4
ответ дан 4 August 2018 в 19:57

Как указано выше, enscript - популярный способ преобразования текста в постскриптум, который затем может быть впоследствии преобразован в PDF. Подобным инструментом, который существует уже давно, является a2ps . Он имеет большое количество опций, включая размещение нескольких страниц на физической странице. Установите ap2s с помощью sudo apt-get install a2ps .

AFAIK, enscript и a2ps выполняют одну и ту же работу, но их интерфейс отличается и YMMV с каждым из них.

2
ответ дан 4 August 2018 в 19:57

без установки какого-либо из вышеупомянутых программ, можно просто сделать следующее с уже установленным cupsfilter :

  cupsfilter foo.txt & gt;  foo.pdf  

(для параметров и т. д., пожалуйста, обратитесь к страницам cupsfilter man :-))

12
ответ дан 4 August 2018 в 19:57

У меня были некоторые проблемы с немецким Umlaute (ÄÖÜ) с вышеупомянутыми решениями. Или, в случае папок, полученный PDF не имеет текстового слоя.

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

  wktmltopdf & lt; textfile & gt;  & Lt; pdffile & GT;   

wkhtmltopdf может обрабатывать файлы UTF-8 (в отличие от текста). Все проблемные символы, такие как ÄÖÜß и т. Д., Будут отображаться правильно.

2
ответ дан 6 August 2018 в 04:00

Существует программа командной строки, которая может конвертировать между всеми поддерживаемыми форматами open / libre office под названием unoconv , поэтому, если вам нужно пакетное преобразование со сценарием, это пригодится.

  sudo apt-get install unoconv  
6
ответ дан 6 August 2018 в 04:00

ПРОСТОЙ ЭНЦРИПТНЫЙ ПУТЬ

sudo apt-get install cups-pdf enscript

Затем запустите файл в вашем файле с помощью переключателя -P и описание принтера PDF в этом случае.

enscript -B -PPDF test.txt

Принтер с описанием PDF был создан при установке cups-pdf, когда вы используете файл с этим принтером, ваш документ будет отправлен на принтер PDF и будет напечатан в файл, созданный как .pdf в каталоге / home / PDF, команда выше распечатает текстовый файл test.txt в формате pdf в в каталоге PDF.

ИСПОЛЬЗОВАНИЕ UNOCONV

sudo apt-get install unoconv

Вы можете использовать unoconv в автономном режиме, это означает что в отсутствие слушателя OpenOffice он начнет свой собственный:

В каталоге, где находится ваш файл, запущен:

unoconv -f pdf test.txt

, это создаст красивый pdf-файл test.txt. в текущем каталоге

13
ответ дан 6 August 2018 в 04:00

paps - лучшая альтернатива, чем enscript

  paps file.txt |  ps2pdf - output.pdf  
4
ответ дан 6 August 2018 в 04:00

Вы можете использовать a2x

a2x - преобразовать текстовый файл Asciidoc в PDF, XHTML, HTML Help, ODF, manpage или обычный текст

. Чтобы установить a2x:

  sudo apt-get install asciidoc  

например:

  a2x -f pdf testfile.txt [  ! d1] 
5
ответ дан 6 August 2018 в 04:00

Как указано выше, enscript - популярный способ преобразования текста в постскриптум, который затем может быть впоследствии преобразован в PDF. Подобным инструментом, который существует уже давно, является a2ps . Он имеет большое количество опций, включая размещение нескольких страниц на физической странице. Установите ap2s с помощью sudo apt-get install a2ps .

AFAIK, enscript и a2ps выполняют одну и ту же работу, но их интерфейс отличается и YMMV с каждым из них.

2
ответ дан 6 August 2018 в 04:00

без установки какого-либо из вышеупомянутых программ, можно просто сделать следующее с уже установленным cupsfilter :

  cupsfilter foo.txt & gt;  foo.pdf  

(для параметров и т. д., пожалуйста, обратитесь к страницам cupsfilter man :-))

12
ответ дан 6 August 2018 в 04:00

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

Похожие вопросы: