Serverseitige vs. clientseitige PDF-Tools: So funktionieren sie
Ein serverseitiges PDF-Tool lädt deine Datei auf die Rechner des Betreibers hoch, verarbeitet sie dort und schickt das Ergebnis zurück. Ein clientseitiges Tool lädt stattdessen das Programm in deinen Browser, und das Programm verarbeitet die Datei auf deinem eigenen Gerät. Im ersten Fall reist dein Dokument, im zweiten nur Code.
Dieser eine Unterschied entscheidet, wer deine Datei überhaupt jemals sehen kann. Er erklärt auch, warum sich die beiden Arten von Tools anders anfühlen, auf andere Weise scheitern und zu anderen Aufgaben passen. Diese Erklärung geht Schritt für Schritt durch, was bei beiden tatsächlich passiert.
Was in einem serverseitigen Tool passiert
- Du wählst eine Datei. Die Seite schickt sie über das Internet an den Server des Betreibers, meist als HTTPS-Upload.
- Der Server speichert sie, zumindest für die Dauer der Aufgabe auf der Festplatte oder im Arbeitsspeicher, oft in einer Warteschlange mit den Dateien anderer Leute.
- Ein Programm auf dem Server, etwa eine PDF-Bibliothek, ein Konverter oder eine Texterkennung, erledigt die Arbeit.
- Auch das Ergebnis wird gespeichert, und die Seite gibt dir einen Link zum Herunterladen.
- Beide Dateien werden später gelöscht, nach den eigenen Aufbewahrungsregeln des Betreibers.
Früher war das der einzige praktikable Aufbau. Browser waren langsam, und Bibliotheken, die PDFs lesen und neu schreiben konnten, liefen nur auf Servern. Heutige Browser führen komplexen Code schnell aus, und quelloffene PDF-Bibliotheken in JavaScript können die meisten alltäglichen Aufgaben in einem Tab erledigen.
HTTPS schützt Schritt 1 vor Lauschern. Die Schritte 2 bis 5 hängen vom Betreiber ab: von seiner Sicherheit, dem Zugriff seiner Mitarbeiter, seinen Backups und seinen rechtlichen Pflichten in dem Land, in dem die Server stehen. Die meisten Betreiber gehen verantwortungsvoll damit um, aber du vertraust darauf, dass sie es tun.
Was in einem clientseitigen Tool passiert
- Du öffnest die Tool-Seite. Dein Browser lädt die Seite und ihr JavaScript herunter, wie bei jeder Website.
- Du wählst eine Datei. Die File API des Browsers liest sie von deiner Festplatte in den Arbeitsspeicher des Tabs. Nichts wird gesendet.
- Code, der im Tab läuft, erledigt die Arbeit. Aufwendige Teile laufen oft in einem Web Worker, einem Hintergrund-Thread, damit die Seite reaktionsfähig bleibt.
- Das Ergebnis wird im Arbeitsspeicher erstellt und dir als Download übergeben, über einen temporären Link, der auf Speicher in deinem eigenen Browser zeigt.
- Wenn du den Tab schließt, wird der Speicher freigegeben. Anderswo gibt es nichts zu löschen, weil nichts gesendet wurde.
Die PDF-Tools von Kopitiam funktionieren so. Sie nutzen pdf.js, die quelloffene PDF-Engine von Mozilla, um Seiten zu lesen und darzustellen, wobei ihr Parser in einem Web Worker läuft. Und sie nutzen pdf-lib, eine weitere quelloffene Bibliothek, um die neue PDF zu erstellen. Beide laufen in deinem Tab.
Warum clientseitige Tools offline funktionieren können
Sobald das Programm in deinem Browser ist, braucht es das Netzwerk nicht mehr, um zu laufen. Deshalb funktioniert der Offline-Test: Tool laden, WLAN aus, und das Tool läuft weiter. Würde es wirklich hochladen, würde es sofort scheitern.
Ein paar Details sind wissenswert. Kopitiam startet den Worker seiner PDF-Engine, sobald eine Tool-Seite geöffnet wird, nicht erst, wenn du eine Datei hineinziehst, deshalb funktionieren die Tools weiter, wenn die Verbindung abbricht, nachdem die Seite geladen ist. Manche seltener genutzten Funktionen laden beim ersten Gebrauch zusätzlichen Code, etwa die Schrift-Engine für Text in nicht-lateinischen Schriften. Das ist Code, der zu dir kommt, nicht deine Datei, die hinausgeht.
Die echten Grenzen der clientseitigen Verarbeitung
Die Arbeit auf deinem Gerät zu erledigen, hat seinen Preis, und ein ehrliches Tool sollte dir das sagen.
- Arbeitsspeicher. Die ganze Datei liegt im Speicher des Tabs, während der Verarbeitung oft in mehr als einer Kopie. Ein 200-MB-Scan kann ein Mehrfaches davon brauchen. Browser begrenzen den Speicher pro Tab, und Handys am stärksten.
- Geschwindigkeit. Dein Laptop oder Handy erledigt die Arbeit, nicht ein Rechenzentrum. 400 Seiten in Bilder umzuwandeln oder jedes Foto in einem langen Scan neu zu komprimieren, dauert auf einem älteren Gerät spürbar länger.
- Akku und Wärme. Eine lange Aufgabe auf dem Handy lässt den Prozessor eine Weile auf Hochtouren laufen.
- Schwierige Aufgaben. Manche Aufgaben sind mit Server-Software viel einfacher, etwa Texterkennung in großen gescannten Archiven oder das Umwandeln komplexer Office-Dateien mit exaktem Layout. Viele Tools, die sonst clientseitig arbeiten, schicken genau diese Aufgaben an einen Server.
In der Praxis ist die Größengrenze eines clientseitigen Tools dein Gerät und keine Zahl auf einer Preisseite. Kopitiam hat in seinem Code keine Dateigrößengrenze, eine sehr große Datei funktioniert also entweder, oder der Speicher reicht nicht aus. Die große Datei vorher zu teilen oder einen Desktop-Browser statt eines Handys zu nutzen, bringt sie meist durch.
Nimm einen 40-MB-Scan, den du für eine E-Mail verkleinern musst, über eine langsame mobile Verbindung. Ein serverseitiges Tool muss erst alle 40 MB hochladen, bevor es anfangen kann, dann lädst du das Ergebnis herunter, der Großteil der Wartezeit ist also das Netzwerk. Ein clientseitiges Tool spart sich beide Übertragungen, aber dein Handy komprimiert selbst, was bei einem langen Scan eine Weile dauern kann. Keines ist immer schneller: Es hängt von deiner Verbindung und deinem Gerät ab.
Mischformen und Aussagen, die du genau lesen solltest
Nicht jedes Tool ist rein das eine oder das andere. Ein paar Muster begegnen dir häufiger:
- Überwiegend lokal, teilweise Server. Einfache Aufgaben laufen im Browser, während Umwandlung oder Texterkennung hochgeladen werden. Such nach einer Aussage pro Tool, nicht nach einer für die ganze Seite.
- Verschlüsselter Upload. Die Datei wird hochgeladen, aber bei der Übertragung und bei der Speicherung verschlüsselt. Das ist besser als nichts, aber der Server entschlüsselt sie trotzdem, um sie zu bearbeiten.
- Lokal mit Cloud-Speicherung. Die Arbeit passiert lokal, aber das Ergebnis wird in deinem Konto gespeichert, damit du es später öffnen kannst. Das ist bewusst eine Kopie auf dem Server.
- Desktop-Apps. Ein installiertes Programm ist ebenfalls clientseitig, kann aber trotzdem Dateien oder Nutzungsdaten nach Hause schicken. Seine Datenschutzerklärung zählt also auch.
So prüfst du, welche Art du gerade nutzt
Öffne die Entwicklertools des Browsers (F12 in den meisten Desktop-Browsern), geh zum Tab „Netzwerk“ und lass eine Testdatei durch das Tool laufen. Ein serverseitiges Tool zeigt beim Start eine ausgehende Anfrage, die ungefähr so groß ist wie deine Datei. Ein clientseitiges Tool zeigt nur kleine Anfragen, etwa Werbung oder Analyse-Pings, und keine, die mit deiner Datei wächst. Dieselbe Aufgabe bei ausgeschaltetem WLAN zu erledigen, ist die schnelle Version desselben Tests.
Was du wählen solltest
Für Verträge, Gehaltsabrechnungen, Arztbriefe und Ausweisscans ist clientseitig die bessere Standardwahl: Es gibt anderswo keine Kopie, die geleakt oder aufbewahrt werden könnte. Für eine öffentliche Broschüre oder eine Speisekarte ist beides in Ordnung. Wenn du etwas brauchst, das ein Browser nicht gut kann, etwa Texterkennung in einem Archiv mit 2.000 Seiten, ist ein seriöses serverseitiges Tool mit klaren Aufbewahrungsregeln eine vernünftige Wahl, für diese eine Datei und nicht als Gewohnheit.
Häufige Fragen
- Was ist der Unterschied zwischen serverseitigen und clientseitigen PDF-Tools?
- Ein serverseitiges Tool lädt deine Datei hoch und verarbeitet sie auf den Rechnern des Betreibers. Ein clientseitiges Tool schickt das Programm in deinen Browser und verarbeitet die Datei auf deinem eigenen Gerät, die Datei wird also nie hochgeladen.
- Ist clientseitige PDF-Verarbeitung datenschutzfreundlicher?
- Ja, weil es außer auf deinem Gerät nirgends eine Kopie deiner Datei gibt. Ein serverseitiges Tool kann gut betrieben sein, aber du verlässt dich auf seine Sicherheit und seine Aufbewahrungsregeln, solange es die Datei behält.
- Warum haben clientseitige Tools Probleme mit sehr großen PDFs?
- Die ganze Datei muss in den Arbeitsspeicher deines Browser-Tabs passen, während der Verarbeitung oft mehr als einmal. Handys und ältere Laptops haben weniger übrig, deshalb kann ein sehr großer Scan langsam sein oder scheitern. Ihn vorher zu teilen, hilft meistens.
- Ist eine Seite noch clientseitig, wenn sie Werbung lädt?
- Das kann sie sein. Werbung, Schriften und Analyse sind separate, kleine Anfragen. Entscheidend ist, ob der Inhalt deiner Datei jemals gesendet wird, und das kannst du im Netzwerk-Tab oder mit dem Offline-Test prüfen.
- Ist Kopitiam serverseitig oder clientseitig?
- Die PDF-Tools von Kopitiam sind clientseitig. Sie nutzen pdf.js und pdf-lib in deinem Browser-Tab, die Datei wird nie hochgeladen, und die Tools funktionieren weiter, wenn deine Verbindung abbricht, nachdem die Seite geladen ist.
