Adobe Acrobat: Wie Batch mehrere PDF-Dateien zu kombinieren?

Ich habe 3 Ordner:

Folder 1 
Folder 2
Folder 3

In jedem Ordner habe ich 5 PDF-Dateien:

    Folder 1 
       file1.pdf
       file2.pdf
    Folder 2
       file1.pdf
       file2.pdf
    Folder 3
       file1.pdf
       file2.pdf

Ich möchte, dass in jedem Ordner eine kombinierte Datei dieser beiden Dateien vorhanden ist:

    Folder 1 
       binder.pdf
    Folder 2
       binder.pdf
    Folder 3
       binder.pdf

Irgendeine Idee? Sagen Sie nicht, es manuell zu tun. Dieser Fall soll Ihnen nur mein Problem erklären. Denken Sie, dass ich Hunderte von Ordnern habe. :) Vielleicht kann ich ein anderes Tool anstelle von Adobe Acrobat verwenden?!

Author: Andrei Andre, 2012-02-14

8 answers

Sie können dies mit einer kurzen Batch-Datei und pdftk tun.exe (nicht pdftk Builder Das ist die GUI-Version).
Sie müssen nichts installieren.

Vorbereitung

  • herunterladen & Extrahieren pdftk mit UniExtract
  • {[12],} Öffnen ..\pdftk\bin* und kopiere pdftk.exe - und libiconv2.dll in einen Ordner Ihrer Wahl
  • Erstellen Sie eine neue Textdatei und fügen Sie den folgenden Code ein

    @echo off
    setlocal enabledelayedexpansion
    FOR %%A IN (%*) DO (set command=!command! %%A)
    pdftk.exe %command% cat output "%~dp1binder.pdf"
    
  • {[12],} Speichern es als Zusammenfü[email protected] im selben Ordner wie pdftk.exe-Datei, und libiconv2.dll geben Sie hier die Bildbeschreibung ein
  • erstellen Sie eine Verknüpfung dafür .cmd und platziere es in deinem sendto Ordner (Win+R " shell: sendto)

Verwendung

  • Gehen Sie zu einem Ordner mit einigen PDF-Dateien und wählen Sie so viele PDFs aus, wie Sie möchten
  • Rechtsklick auf sie und wählen Sie die Verknüpfung, die Sie gerade erstellt
  • Ein neues Binder PDF im selben Ordner wird erstellt, wo alle ausgewählten PDFs werden zu einem zusammengeführt

    geben Sie hier die Bildbeschreibung ein

Update: Version, die den aktuellen Ordnernamen als Dateinamen für generierte PDF verwendet

@echo off
setlocal enabledelayedexpansion
:: Concat all paths fromselected files and save it as command
FOR %%A IN (%*) DO (set command=!command! %%A)

:: Take path from first selected file and save it as path
set path=%~dp1
echo %path%

:: Check if a trailing slash is present. If yes, remove it
IF %path:~-1%==\ SET path=%path:~0,-1%

:: Get last folder from path
FOR %%F in ("%path%") do (set lastFolder=%%~nxF)

:: Call pdftk, pass on command. use lastFolder as filename
pdftk.exe %command% cat output "%path%\%lastFolder%.pdf"
 12
Author: nixda,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-08-23 10:50:15

Wenn Sie unter Linux (oder Mac oder einer Umgebung, in der es installiert ist) arbeiten, können Sie sie mit einem Befehlszeilentool namens ghostscript kombinieren.

gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=combinedpdf.pdf -dBATCH file1.pdf file2.pdf file3.pdf

Sie können auch Folgendes verwenden, um alle Dateien im aktuellen Ordner zu kombinieren

gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=combinedpdf.pdf -dBATCH *.pdf 

Sie können ghostscript hier herunterladen. Es gibt auch eine Windows-Version, aber ich habe sie nicht getestet.

 5
Author: Cacovsky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-14 13:18:40

Ich habe die obige Lösung erfolgreich. Auf meinem System (Windows 7 64-Bit) fügt der Code jedoch die PDFs in (anscheinend) zufälliger Reihenfolge hinzu, nicht alphabetisch nach Dateinamen.

Um Dateien in alphabetischer Reihenfolge hinzuzufügen, müssen Sie den Parameter sort-object zum Befehl DIR (auch bekannt als Get-ChildItem) hinzufügen (das Sortierobjekt nimmt hier keinen Parameter als Dateiname / alphabetisch ist der Standardwert):

dir $inputfolder -r -include *.pdf -exclude $outputfile | sort-object | group DirectoryName % {& $PDFtk $.group CAT OUTPUT "$($.Name)\$outputfile" verbose}

Diejenigen, die Dateinamen der form 1.pdf-2.PDF ... 10.pdf, etc. statt 01.pdf 02.PDF .. 10.sie können auch gerne eine Variation davon ausprobieren:

pdftk *?.pdf *??.pdf *???.pdf *????.pdf cat output out.pdf
 3
Author: Giles Hudson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-03-07 10:19:10

Es gibt ein neues fortgeschrittenes Online-PDF-Manipulationstool namens Sej-da , das sich noch in der Beta befindet und über eine Vielzahl von PDF-Funktionen verfügt (einschließlich der Möglichkeit, mehrere PDFs zusammenzuführen). Es kostenlos & könnte gut helfen, Ihre Bedürfnisse.

Http://sejda.com/

Eine kurze Überprüfung seiner Funktionen wurde erst vor einigen Wochen durch Revision 3 durchgeführt:

Http://revision3.com/tzdaily/sejda-online-pdf

 1
Author: Simon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-12-02 10:09:39

Vielleicht ist es besser, ein Batch-Szenario zu verwenden. Erstellen und sammeln Sie alle Ihre PDF-Dateien als PDF.abcdef.PDF.

Der erste Teil ist das sogenannte Batch-Tag; Der zweite Teil ist die Dateikennung (Dateiname). Tags für jeden Rücken sind in Länge und Wert ähnlich; Name der Dateien kommen nach dem Punkt.

Zum Beispiel besteht Ihre erste Charge aus 1111.3425.pdf, 1111.76501.pdf so auf. Ihre zweite Charge ist 2222.2432.pdf, 22222.4398, so weiter. Und so weiter und so weiter für andere Chargen.

Dann können Sie eine automatisierte Zusammenführungssoftware verwenden, mit der Tausende von Dateien erstellt werden können, die für jeden Stapel eine separate Zusammenführung erstellen. Ich fand diese Dysprosium freie Software, die keine Befehlszeile oder ein Batch-Skript benötigt. Sie können es als portable JAR-Datei herunterladen. Es hat verschiedene automatisierte Szenarien; eine in dieser Antwort als Tagging und eine als Ihr erforderlicher Ordner getrennt beschrieben.

Abhängig von Ihrer Hardware können Sie Tausende von Dateien stapelweise in pre-destined zusammenführen Batch.

 1
Author: Any Body,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-04-05 18:10:38

Versuchen PDFMerge. Aber Verwenden Sie nicht das Anfangsformular, in dem Sie jede Datei einzeln auswählen müssen. Warten Sie stattdessen, bis die Site Ihre Java-Installation überprüft hat, und klicken Sie dann auf den Link "PDFMerge Java Applet ausprobieren". Sobald das Applet geladen ist und ausgeführt werden darf, klicken Sie auf die Schaltfläche Dateien auswählen, und Sie können mehrere Dateien auswählen (zu einer Datei zusammenführen).

Das Zusammenführen ist superschnell und kann eine große Anzahl von Dateien verarbeiten, da nichts hochgeladen wird in der website. Alles wird in Ihrem Computer selbst mit Ihrer Java-Installation erledigt.

PS: Entschuldigung, wenn Sie nach einer Offline-Software suchen, die angepasst werden kann, um einzelne PDF-Dateien in mehreren Ordnern zu erstellen.

 0
Author: ADTC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-14 13:14:56

Wenn Sie auf einem Mac sind, können Sie ein Automator-Skript erstellen, um diese Aufgabe zu erfüllen. Machen Sie es als Ordneraktion und legen Sie einfach die PDFs hinein und sehen Sie, wie es passiert! Wenn Sie möchten, kann ich Ihnen zeigen, wie, laufen Sie mac?

 0
Author: Henrik Söderlund,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-12-02 09:31:55

Unter Linux

Ich schrieb diese ziemlich lange Befehlszeile

tree -fai . | grep -P ".pdf$" | xargs -L1 -I {} dirname {} | uniq | xargs -L1 -I {} bash -c 'cd "$0" && pdftk *.pdf cat output binder.pdf' {}

Aber es macht den Job, ich habe es getestet, es funktioniert auch mit wie vielen Ordnerebenen Sie haben. Stellen Sie einfach sicher, dass Sie es im Stammverzeichnis der Ordnerstruktur ausführen.

Dafür benötigen Sie pdftk und tree und unter Ubuntu Linux können Sie es mit apt installieren:

sudo apt install pdftk tree
 0
Author: Eduard Florinescu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-02-08 09:15:35