Odpowiedzi:
Oto rozwiązanie, które nie obejmuje OpenOffice:
sudo apt-get install enscript
enscript my_text_file.txt -o - | ps2pdf - output.pdf
Istnieje więcej opcji enscript
, np. -B
Pominięcie nagłówka strony. Zobacz man enscript
wszystkie opcje.
bez instalowania żadnego z wyżej wymienionych programów można po prostu wykonać następujące czynności z już zainstalowanym cupsfilter
:
cupsfilter foo.txt > foo.pdf
(opcje itp. znajdują się na stronach podręcznika cupfilter :-))
PROSTY SPOSÓB PISANIA
sudo apt-get install cups-pdf enscript
Następnie w tym przypadku uruchom skrypt na pliku za pomocą przełącznika -P i opisu drukarki PDF.
enscript -B -PPDF test.txt
Drukarka z opisem PDF została utworzona podczas instalacji cup-pdf, kiedy użyjesz w tej drukarce kodu, twój dokument zostanie wysłany do drukarki PDF i wydrukowany do pliku, utworzony jako .pdf w katalogu / home / PDF, powyższe polecenie wydrukuje plik tekstowy test.txt jako plik pdf w katalogu PDF.
KORZYSTANIE Z UNOCONV
sudo apt-get install unoconv
Możesz używać unoconv w trybie autonomicznym, co oznacza, że w przypadku braku detektora OpenOffice, uruchomi się własny:
W katalogu, w którym znajduje się plik, uruchom:
unoconv -f pdf test.txt
stworzy to ładnie wyglądający plik pdf z test.txt. w bieżącym katalogu
enscript foo.txt -o bar.pdf
działa całkiem dobrze; dzięki!
Istnieje program wiersza poleceń, który może konwertować między wszystkimi obsługiwanymi formatami open / libre office o nazwie unoconv, więc jeśli potrzebujesz konwersji wsadowej za pomocą skryptu, przyda się.
sudo apt-get install unoconv
paps
jest lepszą alternatywą niż enscript
paps file.txt | ps2pdf - output.pdf
paps
lepsza alternatywa? A jeśli paps
nie jest instalowane domyślnie, jakie jest polecenie, aby je zainstalować? Zawsze możesz edytować swoją odpowiedź, klikając edit
tuż pod treścią odpowiedzi. Dzięki!
Pandoc jest niezbędnym narzędziem do szwajcarskiego noża, jeśli chodzi o konwersję między różnymi językami znaczników. Aby rozpocząć, najpierw zainstaluj konwerter pandoc:
sudo apt-get install pandoc
Ogólna i najczęściej używana składnia pandoc to:
pandoc -f <from format> -t <to format> <source file>
Pamiętaj, że musisz najpierw zainstalować pakiet texlive-latex-base, aby móc przekonwertować go na format PDF. W przeciwnym razie pojawi się następujący błąd:
pandoc: pdflatex not found. pdflatex is needed for pdf output.
Aby zainstalować:
sudo apt-get install texlive-latex-base
Teraz możesz łatwo przekonwertować dowolny plik na pdf.
pandoc -t txt -t pdf source.txt
zamień txt na format tekstowy (odt - html - ....)
pandoc: Unknown writer: pdf
dopóki nie zainstaluję texlive-latex-base. To jest zaufane. Zobacz github.com/jgm/pandoc/issues/1155 Potem pojawił się błąd dotyczący brakującej czcionki, potem jedna o url.sty itp.
Jak napisano powyżej, enscript
jest popularnym sposobem konwersji tekstu na PostScript, który można następnie przekonwertować na format PDF.
Podobne narzędzie istnieje od dłuższego czasu a2ps
. Ma wiele opcji, w tym umieszczanie wielu stron na stronie fizycznej. Zainstaluj ap2s z
sudo apt-get install a2ps
.
AFAIK, enscript i a2ps wykonują tę samą pracę, ale ich interfejs jest inny i YMMV z każdym z nich.
Miałem pewne problemy z niemieckim Umlaute (ĘÖÜ) z wyżej wymienionymi rozwiązaniami. Lub, w przypadku dokumentów, wynikowy plik PDF nie ma warstwy tekstowej.
Najlepszym rozwiązaniem dla mnie było użycie wkthmltopdf . Wygląda na to, że nie jest udokumentowany, ale możesz łatwo przekonwertować pliki tekstowe na pliki PDF przy użyciu tej składni:
wktmltopdf <textfile> <pdffile>
wkhtmltopdf może obsługiwać pliki UTF-8 (w przeciwieństwie do enscript). Wszystkie problematyczne znaki, takie jak ĘÖÜß itp., Będą wyświetlane poprawnie.
Możesz także użyć u2ps .
Generuje to zarówno ps, jak i pdf. Akceptuje tekst UTF-8 i obsługuje podświetlanie składni poprzez znaczniki Pango.