Risposte:
Ecco una soluzione che non coinvolge OpenOffice:
sudo apt-get install enscript
enscript my_text_file.txt -o - | ps2pdf - output.pdf
Esistono più opzioni enscript
, ad esempio -B
per omettere l'intestazione della pagina. Vedi man enscript
per tutte le opzioni.
senza installare nessuno dei software sopra menzionati, si può semplicemente fare quanto segue con già installato cupsfilter
:
cupsfilter foo.txt > foo.pdf
(per opzioni ecc., consultare le pagine man di cupsfilter :-))
IL MODO SEMPLICE ISCRITTO
sudo apt-get install cups-pdf enscript
Quindi eseguire enscript sul file con l'opzione -P e il PDF di descrizione della stampante in questo caso.
enscript -B -PPDF test.txt
Una stampante con descrizione PDF è stata creata durante l'installazione di cups-pdf, quando si utilizza enscript con quella stampante il documento verrà inviato alla stampante PDF e verrà stampato su file, creato come .pdf nella directory / home / PDF, il comando sopra stamperà il file di testo test.txt come pdf nella directory PDF.
USANDO UNOCONV
sudo apt-get install unoconv
Puoi usare unoconv in modalità standalone, questo significa che in assenza di un listener OpenOffice, inizierà il suo:
Nella directory in cui si trova il tuo file, esegui:
unoconv -f pdf test.txt
questo creerà un bel pdf di test.txt. nella directory corrente
enscript foo.txt -o bar.pdf
funziona abbastanza bene; Grazie!
Esiste un programma da riga di comando che può convertire tra tutti i formati supportati open / libre office chiamato unoconv, quindi se hai bisogno di convertire in batch con uno script, ti tornerà utile.
sudo apt-get install unoconv
paps
è un'alternativa migliore di enscript
paps file.txt | ps2pdf - output.pdf
paps
un'alternativa migliore? E se paps
non è installato per impostazione predefinita, qual è il comando per installarlo? Puoi sempre modificare la tua risposta facendo clic sulla edit
destra sotto il corpo della risposta. Grazie!
Pandoc è uno strumento indispensabile per i coltelli svizzeri quando si tratta di conversione tra vari linguaggi di markup. Per iniziare, installa prima il convertitore pandoc:
sudo apt-get install pandoc
La sintassi generale e più utilizzata per pandoc è:
pandoc -f <from format> -t <to format> <source file>
Si noti che è necessario installare prima il pacchetto texlive-latex-base, prima di poter convertire in formato PDF. Altrimenti otterrai un seguente errore:
pandoc: pdflatex not found. pdflatex is needed for pdf output.
Per installarlo:
sudo apt-get install texlive-latex-base
Ora puoi facilmente convertire qualsiasi file in pdf.
pandoc -t txt -t pdf source.txt
sostituisci txt con il tuo formato di testo (odt - html - ....)
pandoc: Unknown writer: pdf
finché non installo texlive-latex-base. Questo è fidato. Vedi github.com/jgm/pandoc/issues/1155 Poi ho ricevuto un errore su un font mancante, poi uno su url.sty, ecc.
Come pubblicato sopra, enscript
è un modo popolare per convertire il testo in Postscript, che può quindi essere ulteriormente convertito in PDF.
Uno strumento simile, che esiste da molto tempo, lo è a2ps
. Ha un gran numero di opzioni, incluso l'inserimento di più pagine su una pagina fisica. Installa ap2s con
sudo apt-get install a2ps
.
AFAIK, enscript e a2ps fanno lo stesso lavoro, ma la loro interfaccia è diversa e YMMV con ognuno di essi.
Ho avuto dei problemi con il tedesco Umlaute (ÄÖÜ) con le soluzioni sopra menzionate. Oppure, nel caso di paps, il PDF risultante non ha un livello di testo.
La soluzione migliore per me era usare wkthmltopdf . Sembra non essere documentato, ma puoi facilmente convertire file di testo in file PDF usando questa sintassi:
wktmltopdf <textfile> <pdffile>
wkhtmltopdf è in grado di gestire file UTF-8 (a differenza di enscript). Tutti i caratteri problematici come ÄÖÜß ecc. Verranno visualizzati correttamente.
Puoi usare anche u2ps .
Questo genera sia ps che pdf. Questo accetta il testo UTF-8 e supporta l'evidenziazione della sintassi tramite markup Pango.