Ein leichtgewichtiges, interaktives Command-Line-Tool zum Teilen (Splitten) und Zusammenführen (Mergen) von PDF-Dateien.
Das Programm wurde in Python entwickelt und bietet eine intuitive Benutzerführung direkt über die Kommandozeile oder innerhalb von PyCharm.
-
Split-Funktion:
Extrahiert bestimmte Seiten oder Seitenbereiche aus einer PDF-Datei (z. B.1,3-5,10) und erstellt daraus eine neue Datei. -
Merge-Funktion:
Fügt mehrere PDF-Dateien in frei wählbarer Reihenfolge zu einer neuen, zusammengeführten Datei zusammen. -
Interaktiver Modus:
Das Tool begleitet den Benutzer Schritt für Schritt durch alle Eingaben – ideal für den praktischen Einsatz ohne komplizierte Parameter.
- Betriebssystem: Windows 10 oder höher
- Python-Version: 3.11 oder neuer
- IDE (empfohlen): PyCharm
-
Projekt anlegen
- In PyCharm:
File → New Project → Location: pdf-tool
Interpreter: New Virtualenv (empfohlen)
- In PyCharm:
-
Dateien erstellen
pdf_tool.py– Hauptskriptrequirements.txtmit folgendem Inhalt:typer>=0.12 pypdf>=4.0
-
Abhängigkeiten installieren Öffne das Terminal (z. B. in PyCharm) und führe aus:
pip install -r requirements.txt
Lege die zu bearbeitenden PDF-Dateien in deinen Projektordner und starte das Tool über:
python pdf_tool.py wizardDer interaktive Assistent führt dich anschließend durch den gesamten Prozess.
Willkommen zum PDF-Tool 👋
Möchtest du (s)plitten oder (m)ergen? [s/m]: s
Pfad/Name der Eingabe-PDF: input.pdf
Seitenangaben (z. B. 1,3-5,10): 1,3-4
Name der Ausgabe-PDF [input_extract.pdf]:
✅ Fertig: input_extract.pdfWillkommen zum PDF-Tool 👋
Möchtest du (s)plitten oder (m)ergen? [s/m]: m
Namen/Pfade der PDFs in gewünschter Reihenfolge (durch Komma getrennt):
teil1.pdf, teil2.pdf, teil3.pdf
Name der Ausgabe-PDF [merged.pdf]:
✅ Fertig: merged.pdf-
Menü: Run → Edit Configurations → + Python
-
Script path: pdf_tool.py
-
Parameters: wizard
-
Working directory: dein Projektordner
-
Speichern →
▶️ Run klicken
-
Programmiersprache: Python
-
Bibliotheken:
- pypdf – für Lese- und Schreiboperationen von PDF-Dateien
- typer – für den Aufbau der interaktiven Kommandozeilenoberfläche
-
Entwicklungsumgebung: PyCharm (empfohlen)
-
Kompatibilität: getestet unter Windows 11
Geplante oder empfohlene zukünftige Erweiterungen:
- 🔄 Drehen und Zuschneiden (Rotate/Crop) von PDF-Seiten
- 🧾 Batch-Verarbeitung über YAML-Konfigurationsdateien
- 📦 Paketierung als CLI-Tool (pdfcli) zur globalen Nutzung über die Konsole
- 🧪 Unit Tests und CI-Integration über GitHub Actions
Dieses Projekt steht unter der MIT-Lizenz. Die Nutzung, Veränderung und Weitergabe des Codes ist ausdrücklich erlaubt, sofern die ursprünglichen Urheberangaben beibehalten werden.
Paul Ignatiadis
🎓 RWTH Aachen University