Ich möchte .txt
Dateien in konvertieren .pdf
. Ich benutze das:
ls | while read ONELINE; do convert -density 400 "$ONELINE" "$(echo "$ONELINE" | sed 's/.txt/.pdf/g')"; done
Dies führt jedoch zu einem "Fehler" - wenn die Textdatei eine sehr lange Zeile enthält, wird sie nicht umgebrochen.
Eingabetext
PDF ausgeben
-
Außerdem wäre es auch großartig, wenn das Ausgabe-PDF anstelle von Textbildern Text enthalten könnte.
Ich habe viele, viele TXT-Dateien. Also nicht von Hand machen. Ich brauche eine automatische Lösung wie die oben erwähnte.
text-processing
pdf
imagemagick
conversion
LanceBaynes
quelle
quelle
for ONELINE in *
anstelle von verwendenls | while read ONELINE
. Lesen Sie dies .Antworten:
Eine Methode besteht darin, CUPS und den PDF-Pseudodrucker zu verwenden, um den Text in eine PDF-Datei zu "drucken".
Eine andere Möglichkeit ist die Verwendung von enscript zum Codieren in Postscript und die anschließende Konvertierung von Postscript in PDF mithilfe der ps2pdf-Datei aus dem Ghostscript-Paket.
quelle
Pandoc kann das. Es konzentriert sich mehr auf das Konvertieren von markierten Texten in verschiedene Formate, sollte aber keine Probleme mit einfachem Klartext haben.
quelle
LibreOffice / OpenOffice sowie die meisten anderen Textverarbeitungsprogramme (Abiword) können dies recht einfach.
Es gibt ein kleines Hilfsprogramm
unoconv
, das die LibreOffice-Codebasis verwendet, um Dateiformatkonvertierungen in der Befehlszeile durchzuführen. Es kann eine beliebige Kombination von Formaten lesen und schreiben , dass Libreoffice kann und macht es sehr einfach Dinge wie zu tun ,doc
umpdf
auf der Kommandozeile Konvertierungen. Einfachtxt
zupdf
wäre leicht für sie.quelle
unoconv
und wusste nicht einmal, dass OO APIs hat.unoconv --listener &
Befehl ausführen .Sie können Text mit Vim in eine PostScript-Datei drucken und dann in eine PDF-Datei konvertieren, sofern Vim mit dieser
+postscript
Funktion kompiliert wurde .Dazu verwenden Sie den
:hardcopy > {filename}
Befehl. Zum Beispiel können Sie öffnenexample.txt
und ausführenDadurch wird eine Datei erstellt,
example.ps
die den gesamten Text in enthältexample.txt
. Die Kopfzeile jeder Seite in der PostScript-Datei enthält den ursprünglichen Dateinamen und die Seitennummer.Anschließend können Sie die PostScript-Datei mit dem folgenden Befehl in eine PDF-Datei konvertieren
was schaffen wird
example.pdf
.Sie können dasselbe direkt von einem Terminal aus tun (ohne mit Vim zu interagieren), indem Sie den folgenden Befehl verwenden
Dies wird
example.txt
in Vim geöffnet und führt den an die-c
Option übergebenen Befehl aus. In diesem Fall handelt es sich um einenhardcopy
Befehl, auf den ein quit (q
) -Befehl folgt . Dann wird ausgeführtps2pdf
, um die endgültige Datei zu erstellen.Weitere Optionen finden Sie in den Hilfedateien mit
:help :hardcopy
.quelle
:hardcopy
erzeugt eine PostScript-Datei, egal ob ich .pdf oder .ps-Erweiterungen hinzufüge. Ich habe:hardcpy > example.pdf
und mitless example.pdf
in Shell konnte ich sehen, dass der Datei-Header war%!PS-Adobe-3.0
.Verwenden Sie einfach das kostenlose und OpenSource-fähige text2pdf . Unter dem Link können Sie den Quellcode oder die vorkompilierte Binärdatei für Windows, Solaris, DOS herunterladen.
Ich kann es problemlos in AIX OS verwenden. Sehr einfach zu kompilieren, speichern Sie einfach die Datei text2pdf.c und Makefile im selben Verzeichnis und Typ
make
. (hier setze ich die Variable CC = gcc unter AIX, unter Linux wird dies kein Problem sein)quelle
Es gibt auch einen UTF-8 in PostScript Konverter
paps
.quelle
Verwenden Sie enscript, um eine .ps-Datei zu erstellen, und dann ps2pdf (oder ps2pdfwr), um in .pdf zu konvertieren
Das folgende Skript erstellt eine PDF-Datei mit einem linken und einem rechten Rand von 10 Pkt. Und verwendet eine Courier-Schriftart, die 7,3 Pkt. Breit und 10 Pkt. Hoch ist, sodass ein 132-Farben-Ausdruck auf eine 8 1/2 x 11-Seite passt. Verwenden Sie enscript, um Ihre Seite, Schriftarten usw. einzurichten.
quelle
LibreOffice funktioniert dafür. Verwendungszweck:
libreoffice --convert-to "pdf" file.txt
Der Ausgang wird aufgerufen
file.pdf
.quelle