Skip to main content
PDF Tools

Warum Ihr PDF-Tool im Browser laufen sollte, nicht in der Cloud

Was ein Upload wirklich preisgibt, welche PDF-Operationen ein Browser leisten kann und welche lokal gar nicht laufen. Auch unsere.

Von 7 min read
Titelkarte des Artikels. Ein Browserfenster mit einem bernsteinfarbenen Dokument samt Vorhängeschloss, mit der Zeile: the file never leaves the tab

Jede Seite nach dem Muster "Datei hineinziehen, bearbeitet zurückbekommen" macht dasselbe Angebot, und für eine Broschüre oder einen Lebenslauf ist das ein völlig gutes Angebot. Bei einem unterschriebenen Vertrag, einer Steuererklärung oder irgendetwas mit dem Namen einer Mandantin darauf ist der Upload der Teil, über den es sich nachzudenken lohnt.

Üblicherweise wird das als Cloud schlecht, Browser gut erzählt. Diese Erzählung ist bequem, und sie fällt in dem Moment auseinander, in dem Sie ein Tool um etwas bitten, das ein Browser schlicht nicht kann. Die brauchbare Frage ist enger: welche Operationen können überhaupt lokal laufen, und sagt Ihnen das Tool vor Ihnen, auf welcher Seite dieser Grenze es steht.

Unseres läuft auch nicht immer lokal. Dazu weiter unten, mit Namen.

Was ein Upload wirklich preisgibt

Das optimistische Modell lautet: Datei hoch, Server verarbeitet, Ergebnis herunter, Datei weg. Es ist an vier Stellen optimistisch.

Die Datei

Sie landet auf der Infrastruktur von jemandem, und ihr weiteres Schicksal regelt eine Richtlinie, die Sie nicht gelesen haben. Einen Tag aufbewahrt, aufbewahrt bis Sie fragen, durch eine Qualitätskontrolle mit einem Menschen darin geschickt, in ein Trainingskorpus aufgenommen. Kostenlose Angebote werden von irgendetwas subventioniert, und nicht immer von Werbung.

Die Metadaten, an die Sie nicht gedacht haben

Ein PDF trägt ein Document Information Dictionary und ein XMP-Paket, und jede Bibliothek kann beides lesen. pdf-lib legt die Felder direkt offen2: Titel, Autor, Betreff, Schlagwörter, Producer, Creator, Erstellungsdatum, Änderungsdatum.

In einer aus einem Office-Paket exportierten Datei ist "Autor" meist der Kontoname des Betriebssystems, und "Producer" nennt Software und Version. Sie können den Dokumententext sorgfältig säubern und trotzdem Ihren Namen, Ihren Arbeitgeber und die genaue Minute mitliefern.

Inhalt, den Sie für entfernt hielten

Links eine PDF-Seite mit der Überschrift Confidential schedule, deren Textzeile unter einem schwarzen Rechteck verschwindet. Rechts der aus derselben Datei extrahierte Text, der weiterhin Settlement amount: 2,400,000 EUR lautet
Mit pdf-lib gebaut, mit PDF.js zurückgelesen. Das Rechteck hat das Bild verändert und sonst nichts.

Ein gefülltes Rechteck über Text zu zeichnen entfernt den Text nicht. Es fügt eine Form hinzu, die zufällig darüber liegt, und die ursprünglichen Operatoren bleiben im Content-Stream.

Wir haben diese Datei gebaut, statt es zu behaupten: eine Seite mit einem Vergleichsbetrag, ein schwarzes Rechteck darüber, gespeichert, dann wieder geöffnet und mit PDF.js gelesen. getTextContent() gab die Zeile vollständig zurück, samt Währung.

Laden Sie so eine Datei irgendwo hoch, und der Empfänger hat die Zahl.

Die Anfrage selbst

Selbst ein Dienst, der Ihre Datei sofort wieder löscht, behält Zugriffsprotokolle: Ihre Adresse, den Zeitstempel und den Dateinamen. Heisst die Datei acme-acquisition-term-sheet-2026.pdf, war sie fast überflüssig.

Was ein Browser wirklich kann

Die alte Abwertung, PDF-Tools im Browser seien Spielzeug, stimmt seit einiger Zeit nicht mehr. Die tatsächliche Beschränkung ist konkret statt allgemein.

Zwei gruppierte Listen von PDF-Operationen. Die erste Gruppe, die im Browser-Tab läuft, umfasst Seitenmanipulation, Zeichnen und Formulare, Metadaten, Rendern und Textextraktion sowie PDFs aus Bildern. Die zweite Gruppe, die einen Server braucht, umfasst Passwörter, bildbasierte Komprimierung, OCR und Signaturprüfung
Die obere Gruppe ist eine JavaScript-Bibliothek, die eine Datei umschreibt. Die untere braucht etwas, das eine JavaScript-Bibliothek nicht hat.

pdf-lib ist reines JavaScript und erledigt die strukturelle Arbeit: Teilen und Zusammenführen, Formulare ausfüllen, Schriften und Bilder einbetten, zeichnen sowie Metadaten lesen und setzen2. Es schreibt ein gewöhnliches PDF, keinen speziellen Browser-Dialekt. Unser PDF-Merger und unser PDF-Splitter bauen darauf auf, und beide senden nichts irgendwohin.

PDF.js ist Mozillas Renderer, der in Firefox3. Er parst und zeichnet, was ihn zum richtigen Werkzeug für Vorschau, Textextraktion und den Export von Seiten als Bilder macht. Eine Bibliothek zum Erzeugen ist er nicht.

Und dann kommt der Teil, den fast jeder Artikel zu diesem Thema falsch hat.

Die Passwort-Grenze

pdf-lib kann nicht verschlüsseln. Die README sagt es direkt: verschlüsselte Dokumente werden derzeit nicht unterstützt, und die Option ignoreEncryption, die es zum Laden gibt, entschlüsselt nichts1.

Dieser eine Satz entscheidet viel. Eine Webseite, die anbietet, ein PDF-Passwort zu setzen oder zu entfernen, tut eines von zwei Dingen: Sie liefert einen WebAssembly-Build einer nativen Bibliothek aus, ein grosser Download, den die Nutzerin beim ersten Laden bezahlt, oder sie lädt die Datei hoch. In der Praxis fast immer das Zweite.

Komprimierung liegt aus einem anderen Grund auf derselben Seite. Echte PDF-Komprimierung heisst, die eingebetteten Bilder neu zu kodieren und die Objekttabelle neu zu bauen, das ist eine Bild-Pipeline und kein Seiten-Umschreiber. WebAssembly-Builds von Ghostscript oder MuPDF können das im Tab, zum Preis eines Bundles in Megabyte-Grösse, und Ghostscripts AGPL-Lizenz ist ein eigenes Gespräch, bevor Sie das ausliefern.

Unsere eigenen Tools, weil alles andere seltsam wäre

Manche Tools auf dieser Seite laufen in Ihrem Browser. Manche nicht, und in einem Artikel über PDF-Datenschutz etwas anderes zu behaupten wäre schlimmer, als gar nichts zu sagen.

Im Tab, nichts wird hochgeladen: PDF-Merger , PDF-Splitter , PDF-Seiten drehen , PDF-Seiten sortieren , Bild zu PDF , PDF zu Text , PDF zu Bild .

Auf unsere Server in der EU geladen, verarbeitet, nach 15 Minuten gelöscht: PDF-Kompressor , PDF mit Passwort schützen , PDF entsperren sowie die ausdrücklich als "Server-Side" benannten Varianten von Merge, Split und Rotate, die es für Dateien gibt, an denen die Browser-Versionen scheitern.

Jedes dieser Tools sagt auf seiner eigenen Seite, was es ist, und die Server-Varianten tragen es im Namen. Ist ein Dokument sensibel genug, dass dieser Artikel darauf zutrifft, nehmen Sie eines aus der ersten Liste oder eine Desktop-Anwendung.

Was Browser weiterhin schlecht können

OCR. Aus einem Scan durchsuchbaren Text zu machen braucht ein trainiertes Modell. OCR im Browser gibt es und sie läuft, und bei einem langen Dokument ist sie langsam und das Ergebnis muss nachkorrigiert werden. Wer Qualität braucht, braucht ein Backend, und dann lautet die Frage, welchem Backend man vertraut, nicht ob man eines nimmt.

Signaturprüfung. Eine Signatur zu prüfen heisst, eine Zertifikatskette abzulaufen und den Sperrstatus abzufragen, beides sind Netzwerkaufrufe. Das ist keine Browser-Beschränkung, sondern das Wesen der Prüfung.

Bevor Sie irgendetwas hochladen

Die ganze Checkliste fällt auf eine Frage und einen Test zusammen.

Die Frage: Enthält diese Datei den Namen einer realen Person, Geld, juristische Bedingungen, Gesundheitsdaten oder irgendetwas, das Ihr Arbeitgeber vertraulich nennen würde? Dazu: Gibt es Metadaten, die Sie nicht vorlesen würden, und wurde etwas "geschwärzt", indem man darüber gezeichnet hat?

Der Test, für jedes Tool einschliesslich dieses hier: DevTools öffnen, Tab Netzwerk, mit einer kleinen Datei ausführen. Ein Upload ist unverkennbar, eine Multipart-Anfrage ungefähr in der Grösse Ihres Dokuments. Nichts dergleichen heisst, die Arbeit fand lokal statt. Das dauert dreissig Sekunden und klärt die Frage, über die eine Datenschutzerklärung nur Behauptungen aufstellt.

Wenn es doch ein gehosteter Dienst sein muss: Lesen Sie die Aufbewahrungsfrist statt der Marketingseite, prüfen Sie die Jurisdiktion, und finden Sie heraus, ob je ein Mensch die Datei sieht.

Warum das strukturell ist

Ein Dienst, der Dokumente hält, und sei es für fünfzehn Minuten, ist eine Sammlung von Dokumenten. Das ist kein Vorwurf an irgendjemanden. Es ist die Architektur: eine Datenbank, die man kompromittieren kann, ein Speicher, den man falsch konfigurieren kann, Personal mit Zugriff.

Ein Tool, das Ihre Datei nie erhält, hat davon nichts, und auch keine Richtlinie, der man vertrauen müsste, weil es nichts gibt, worüber man eine Richtlinie hätte.

Das ist das ganze Argument, und deshalb muss die ehrliche Fassung die Fälle einschliessen, in denen der Browser nicht hilft. Genau zu wissen, welche vier Operationen einen Upload erzwingen, ist nützlicher als zu glauben, der Browser könne alles, und das beim Hochladen eines Vertrags herauszufinden.

Quellen

Jede Zahl in diesem Artikel lässt sich auf eine Quelle unten zurückführen. Behauptungen ohne Beleg wurden gestrichen, nicht abgeschwächt.

  1. PrimärquelleGitHub

    Die Aussage, dass pdf-lib verschlüsselte Dokumente derzeit nicht unterstützt und dass die Option ignoreEncryption das Dokument nicht entschlüsselt.

  2. Primärquellepdf-lib

    Den dokumentierten Funktionsumfang, der Teilen und Zusammenführen, Formulare ausfüllen, Schriften und Bilder einbetten, Grafiken zeichnen sowie Lesen und Setzen von Dokument-Metadaten umfasst.

  3. PrimärquelleMozilla

    Dass PDF.js ein universeller PDF-Renderer auf Basis von Webstandards ist und der in Firefox ausgelieferte Viewer.

Themen

In diesem Artikel erwähnte Tools

  • PDF Compressor - Compress PDFs with Ghostscript image downsampling. Pick a quality preset. Files auto-deleted after 15 minutes.
  • PDF Merger - Merge multiple PDF files into a single document with drag-and-drop reordering.
  • PDF Splitter - Extract specific pages or page ranges from a PDF into a new document.
  • PDF Password Protect - Add AES-256 password protection to PDF files via qpdf. Files auto-deleted after 15 minutes.

Neue Tools per E-Mail

Neue Tools und gelegentlich ein ausführlicher Artikel, etwa einmal im Monat. Kein Spam, deine Adresse bekommt niemand, Abmeldung mit einem Klick.

Ähnliche Artikel

Titelkarte des Artikels. Ein Schild, dessen rechte Hälfte bernsteinfarben gefüllt ist, mit der Zeile: what leaves the machine, and when
Security & Privacy Guide

Datenschutz-Leitfaden: Bedrohungsmodelle für Browser-Arbeit

Bedrohungsmodelle, die einen Namen verdienen, der 30-Sekunden-Test statt jeder Datenschutzerklärung, und eine ehrliche Liste, welche unserer Tools hochladen.

Titelkarte des Artikels. Eine Klemmbretttafel mit drei Textzeilen und einem bernsteinfarbenen Ausrufezeichen an der Ecke, mit der Zeile: paste is a transfer, not a view
Security & Privacy

Das sollte man niemals in ein zufälliges Online-Tool einfügen

Ein brauchbares Bedrohungsmodell für Web-Tools im Beruf: wo eine Eingabe wirklich landet, welche Daten unproblematisch sind, und der Test, der 30 Sekunden dauert.

Titelkarte des Artikels. Ein großes graues Quadrat, ein Pfeil und ein deutlich kleineres bernsteinfarbenes Quadrat, mit der Zeile: same picture, fewer bytes
Image Tools

Client-seitige Bildkomprimierung: Was wirklich im Browser passiert

Die echte Pipeline hinter Canvas, OffscreenCanvas und WebCodecs, welche Formate ein Browser kodiert und welche nicht, und wann man doch einen Server braucht.