Wenn ich versuche, zwei PDF-Dateien mit Imagemagick zusammenzuführen
convert pdf1.pdf pdf2.pdf temp.pdf
Die resultierende Datei temp.pdf scheint eine sehr niedrige Auflösung zu haben. Wie kann ich die Auflösung der Quelldateien beibehalten?
Wenn ich versuche, zwei PDF-Dateien mit Imagemagick zusammenzuführen
convert pdf1.pdf pdf2.pdf temp.pdf
Die resultierende Datei temp.pdf scheint eine sehr niedrige Auflösung zu haben. Wie kann ich die Auflösung der Quelldateien beibehalten?
Antworten:
Barns hat recht, aber wenn pdftk nicht funktioniert hat, versuchen Sie es mit Ghostscript.
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=temp.pdf pdf1.pdf pdf2.pdf
Der Konvertierungsbefehl von Imagemagick wird normalerweise zum Konvertieren von Bilddateien von einem Format in ein anderes verwendet. In diesem Fall wird möglicherweise tatsächlich eine interne Konvertierung durchgeführt, bevor die beiden "Bilder" (PDFs) in eine einzige Datei ausgegeben werden.
Ich würde vorschlagen, dass Sie stattdessen das PDF Toolkit (pdftk) verwenden: http://www.accesspdf.com/pdftk/
Aus den Beispielen auf der Website sollte dies so einfach sein wie:
pdftk pdf1.pdf pdf2.pdf cat output temp.pdf
Wenn sich jede Datei, die Sie zusammenführen möchten, in demselben Ordner befindet:
convert -density 150 $(ls -rt *pdf) output.pdf
Das Argument -density 150
erhält die Qualität der zusammengeführten PDF-Dateien.
convert -density 150 *.pdf output.pdf
Ich vergesse immer, wie man das macht und finde diese Frage zuerst, wenn ich suche.
convert -density 600 file1.pdf file2.pdf -resize 50% new.pdf
Das verknüpfte Beispiel hat eine Dichte von 144, die jedoch nie hoch genug war, um nicht pixelig zu wirken.
Wenn Sie mit Linux arbeiten, können Sie auch Poppler ausprobieren, pdfunite
der verkettet, ohne die Auflösung zu verändern.
Ich konnte keine Möglichkeit finden, zwei PDF-Dateien zusammenzufügen, während die Auflösung und der Text intakt blieben, aber ich fand eine Möglichkeit, sie in eine hochauflösende PNG-Datei zu konvertieren.
pdftoppm -f 1 -l 1 -aa yes -aaVector yes -png -r 300 page.pdf > tmp1.png
pdftoppm -f 2 -l 2 -aa yes -aaVector yes -png -r 300 page.pdf > tmp2.png
convert tmp1.png tmp2.png +append -quality 100 page.png
Dies nimmt die ersten beiden Seiten von page.pdf in Anspruch und fügt sie zu einer nebeneinander hochauflösenden PNG-Datei zusammen.
Ändern Sie die letzte Zeile in
convert tmp1.png tmp2.png +append -quality 100 page.pdf
führt zu einer PDF-Dokumentausgabe, wie ich später herausgefunden habe, nachdem ich mit pngtopnm, pnmtops, ps2pdf herumgespielt habe.