Como devo gerar um arquivo pdf em vez de um arquivo ps usando o enscript?

6

Eu queria saber por que o seguinte gera um arquivo ps e não um arquivo pdf? Como posso gerar um arquivo pdf? Obrigado.

$ enscript -B -PPDF code/bloom.c -o bloom.pdf 
[ 2 pages * 1 copy ] left in bloom.pdf
$ file bloom.pdf 
bloom.pdf: PostScript document text conforming DSC level 3.0

Já instalei o cups-pdf por

sudo apt install cups-pdf
    
por Tim 20.09.2018 / 20:03

1 resposta

8

Por padrão, enscript faz somente o arquivo postscipt (ps).

Sua linha de comando está sem dois flags: small -p e capital -P . A linha de comando deve ser assim:

enscript -B -P <PDF_PRINTER_NAME> code/bloom.c -p myfile.ps

De acordo com enscript manpage

-P name, --printer=name
Spool the output to the printer name.

-p file, --output=file
Leave the output to file file. If the file is '-', enscript sends the output to the standard output stdout.

Se uma impressora pdf não estiver disponível no sistema, então ghostscript pode converter o arquivo ps para o arquivo pdf da seguinte forma:

sudo apt install ghostscript
ps2pdf myfile.ps myfile.pdf

ou

enscript file -o - | ps2pdf - output.pdf

Quando a impressora pdf é padrão no sistema, então algo como este comando, irá gerar arquivos pdf em vez dos arquivos ps:

enscript -2 -r -j --font=Times-Roman11 --word-wrap --mark-wrapped=arrow '%f' && sleep 2 && evince ~/PDF/_stdin_.pdf

- The '%f' designates the filename parameter.    
- The '&& sleep 2 &amp;&amp; evince ~/PDF/_stdin_.pdf' commands will wait two seconds for the print job to finish, then run the Evince PDF viewer to display the file _stdin_.pdf you just generated in the user’s PDF subdirectory.
    
por 20.09.2018 / 20:40