Ich muss ein paar döste PDFs zusammenführen, und ich möchte, dass alle Eingabe-PDFs auf einer ungeraden Seite im Ausgabe-PDF beginnen.
Beispiel: A.pdf
hat 3 Seiten, B.pdf
hat 4 Seiten. Ich möchte nicht, dass meine Ausgabe 7 Seiten hat. Was ich möchte, ist ein 8-seitiges PDF, in dem die Seiten 1-3 von A.pdf
, die Seite 4 leer und die Seiten 5-8 von sind B.pdf
. Wie kann ich das machen?
Ich kenne mich mit pdftk aus, habe aber auf der Manpage keine solche Option gefunden.
./pdf-cat-even $(cat list-of-file-names.txt) >concatenated.pdf
<list-of-file-names.txt tr '\n' '\0' | xargs -0 ./pdf-cat-even >concatenated.pdf
Der erste Schritt besteht darin, eine PDF-Datei mit einer leeren Seite zu erstellen. Sie können dies problemlos mit vielen Programmen tun (LibreOffice / OpenOffice, inkscape, (La) TeX, Scribus usw.).
Fügen Sie dann bei Bedarf einfach diese leere Seite hinzu:
Wenn Sie dies automatisch mit einem Skript tun möchten, können Sie zB
pdftk file.pdf dump_data | grep NumberOfPages | egrep -o '[0-9]*'
die Seitenzahl extrahieren.quelle
pdftk --version
gibt pdftk 1.44 zurück. Ich erinnere mich, dass meine versierteren Freunde mindestens 15 Minuten damit verbracht haben, verschiedene Dinge auszuprobieren, um diese Arbeit zu bekommen, und aufgegeben haben.Gilles 'Antwort hat bei mir funktioniert, aber da ich viele Dateien zusammenführen muss, ist es bequemer, wenn ich ihre Namen aus einer Textdatei lesen kann. Ich habe Gilles 'Code leicht modifiziert, um genau das zu tun. Vielleicht würde es jemand anderem helfen:
quelle
Sie können dazu auch LaTeX verwenden (obwohl mir bewusst ist, dass es wahrscheinlich nicht das ist, was Sie wollen). So etwas sollte funktionieren:
Beachten Sie, dass
\cleardoublepage
nur eine leere Seite mit Klassen eingefügt wird, die für zweiseitiges Drucken vorgesehen sind (z. B. Buch).Weitere Optionen und Informationen zu
pdfpages
finden Sie auf CTAN .quelle
\includepdf[pages=-]{...}
.\cleardoublepage
nur eine leere Seite ein, wenn Sie eine Klasse für zweiseitiges Drucken verwenden. Ich habe einen Artikel verwendet, der nicht funktioniert. Ich habe es behoben und die Frage aktualisiert, um dies widerzuspiegeln.\includepdf
Enthält standardmäßig nur die erste Seite (nicht alle Seiten).\documentclass[twoside]{article}
funktioniert auch.Hier ist der Code mit PyPDF2 und Python3
quelle