Como imprimir um arquivo regular para pdf a partir da linha de comando

30

No gedit, a impressão de um arquivo oferece a opção de imprimir para o arquivo em que o arquivo pode ser salvo como um arquivo pdf. Como posso fazer a mesma coisa na linha de comando?

    
por skypemesm 19.02.2011 / 09:53

9 respostas

38

Aqui está uma solução que não envolve o OpenOffice:

  1. sudo apt-get install enscript

  2. enscript my_text_file.txt -o - | ps2pdf - output.pdf

Existem mais opções para enscript , por ex. -B para omitir o cabeçalho da página. Veja man enscript para todas as opções.

    
por Stefano Palazzo 19.02.2011 / 14:09
13

A MANEIRA DE ENVIO SIMPLES

  

sudo apt-get instala o enscript cups-pdf

Em seguida, execute o script em seu arquivo com a opção -P e o PDF de descrição da impressora neste caso.

  

enscript -B -PPDF test.txt

Uma impressora com descrição PDF foi criada quando você instalou o cups-pdf, quando você usa o enscript com aquela impressora seu documento será enviado para a impressora PDF e será impresso para arquivo, criado como .pdf no seu / home / PDF diretório, o comando acima irá imprimir o arquivo de texto test.txt como um pdf no diretório PDF.

USANDO UNOCONV

  

sudo apt-get instala o unoconv

Você pode usar unoconv no modo autônomo, isso significa que, na ausência de um ouvinte do OpenOffice, ele iniciará o seu próprio:

No diretório em que seu arquivo está localizado, execute:

  

unoconv -f pdf test.txt

isso criará um arquivo PDF com boa aparência de test.txt. no diretório atual

    
por Sabacon 19.02.2011 / 14:38
11

sem instalar nenhum dos softwares acima mencionados, pode-se simplesmente fazer o seguinte com o já instalado cupsfilter :

cupsfilter foo.txt > foo.pdf

(para opções, etc., consulte as páginas man do cupsfilter :-))

    
por Abel Tom 19.05.2016 / 06:40
6

Existe um programa de linha de comando que pode converter entre todos os formatos suportados no open / libre office chamado unoconv , portanto, se você precisar para converter em lote com um script, será útil.

sudo apt-get install unoconv
por Allan 19.02.2011 / 10:41
5

Pandoc é uma ferramenta de faca suíça quando se trata de conversão entre várias linguagens de marcação. Para começar, instale primeiro o conversor pandoc:

sudo apt-get install pandoc

A sintaxe geral e mais freqüentemente usada para o pandoc é:

pandoc -f <from format> -t <to format> <source file>

Por favor, note que você precisa instalar o pacote texlive-latex-base antes de poder converter para o formato PDF. Caso contrário, você receberá o seguinte erro:

pandoc: pdflatex not found. pdflatex is needed for pdf output.

Para instalá-lo:

sudo apt-get install texlive-latex-base

Agora você pode facilmente converter qualquer arquivo em pdf.

pandoc -t txt -t pdf source.txt

substitua txt pelo seu formato de texto (odt - html - ....)

    
por Maythux 16.04.2014 / 13:45
4

paps é uma alternativa melhor que enscript

paps file.txt | ps2pdf - output.pdf
    
por hwc 01.09.2013 / 03:52
2

Como postado acima, enscript é uma maneira popular de converter texto em postscript, que pode ser convertido em PDF. Uma ferramenta semelhante, que existe há muito tempo, é a2ps . Tem um grande número de opções, incluindo colocar várias páginas em uma página física. Instalar ap2s com %código%.

AFAIK, enscript e a2ps fazem o mesmo trabalho, mas sua interface é diferente e YMMV com cada um deles.

    
por dirkjot 16.04.2014 / 13:06
2

Eu tive alguns problemas com o alemão Umlaute (ÄÖÜ) com as soluções acima mencionadas. Ou, no caso de paps, o PDF resultante não possui uma camada de texto.

A melhor solução para mim foi usar wkthmltopdf . Parece não estar documentado, mas você pode facilmente converter arquivos de texto em arquivos PDF usando esta sintaxe:

wktmltopdf <textfile> <pdffile>

O wkhtmltopdf pode manipular arquivos UTF-8 (ao contrário do enscript). Todos os caracteres problemáticos como ÄÖÜß etc. serão exibidos corretamente.

    
por Zarathustra 29.01.2016 / 23:28
1

Você pode usar a2x

  

a2x - converte o arquivo de texto Asciidoc para PDF, XHTML, Ajuda HTML, ODF,   manpage           ou texto simples

Para instalar o a2x:

sudo apt-get install asciidoc

por exemplo:

 a2x -f pdf testfile.txt
    
por Maythux 16.04.2014 / 13:31