pdf_zusammenfuegen 0.1.0
pdf_zusammenfuegen: ^0.1.0 copied to clipboard
Offline PDF merge library and CLI for Dart with local processing and ordered input merging.
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 alsUint8Listlabel: 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
.pdfendet
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.