pdf_zusammenfuegen

pdf_zusammenfuegen ist eine kleine Dart-Bibliothek mit CLI zum lokalen Zusammenführen mehrerer PDF-Dateien in der Reihenfolge der Eingabe.

Die Paket-Homepage verweist bewusst auf das öffentliche Online-Tool: https://pdfzus.de/

Warum dieses Paket?

  • Offline-first: PDF-Dateien werden lokal verarbeitet.
  • Klare Reihenfolge: Die Eingabereihenfolge bestimmt die Reihenfolge im Ergebnis.
  • Einfache Integration: Nutzbar als Dart-Bibliothek oder als CLI.
  • Datenschutzfreundlich: Kein Upload auf fremde Server.

Installation

dart pub add pdf_zusammenfuegen

Bibliothek verwenden

import "dart:io";

import "package:pdf_zusammenfuegen/pdf_zusammenfuegen.dart";

void main() async {
  final result = mergePdfDocuments([
    MergeInput(bytes: await File("teil-1.pdf").readAsBytes(), label: "teil-1"),
    MergeInput(bytes: await File("teil-2.pdf").readAsBytes(), label: "teil-2"),
  ]);

  await File("zusammengefuehrt.pdf").writeAsBytes(result);
}

CLI verwenden

Nach einer globalen Aktivierung:

dart pub global activate pdf_zusammenfuegen
pdfzus_merge bewerbung-anschreiben.pdf lebenslauf.pdf -o bewerbung-komplett.pdf

Oder direkt aus dem Paket:

dart run bin/pdfzus_merge.dart input1.pdf input2.pdf -o merged.pdf

API

MergeInput

  • bytes: PDF-Inhalt als Uint8List
  • label: optionaler Name für Fehlermeldungen

mergePdfDocuments(List<MergeInput> inputs)

Führt mehrere PDF-Dokumente in der Reihenfolge der Liste zusammen und gibt die zusammengeführten Bytes zurück.

mergePdfFiles(...)

Liest PDF-Dateien von der Festplatte, führt sie zusammen und schreibt das Ergebnis an einen Zielpfad.

Fehlerfälle

Das Paket bricht mit einer verständlichen Fehlermeldung ab, wenn:

  • keine Eingabedateien angegeben wurden
  • eine Eingabedatei fehlt
  • eine Datei kein PDF ist
  • der Ausgabepfad nicht auf .pdf endet

Hinweis zur Paketseite

Die Kurzbeschreibung in pubspec.yaml ist aus Kompatibilitätsgründen auf Englisch gehalten, weil pub.dev das für Paket-Metadaten empfiehlt. README und Publikationsdokumentation bleiben deutsch.

Libraries

pdf_zusammenfuegen