Methodik
So rendert epsjpg.de
Diese Seite erklärt, welche Software den EPS-zu-JPG-Schritt macht, wie die DPI-Mathematik funktioniert, was mit transparenten EPS-Hintergründen passiert und warum keine Datei den Browser verlässt. Kein Marketing-Sprech, sondern die echte Konvertierungs-Logik.
Wichtiger Hinweis
epsjpg.de ist ein client-seitiger Konvertierer. Die EPS-Datei wird per WebAssembly direkt im Browser gerendert und verlässt zu keinem Zeitpunkt das Gerät des Nutzers. Rechtsgrundlage für den Webseiten-Betrieb ist Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse), nicht Art. 6 lit. b (Vertragsanbahnung), weil kein Konvertierungs-Service serverseitig erbracht wird. Details siehe Datenschutz.
Konvertierungs-Engine: Ghostscript.js (WebAssembly)
Die Konvertierung von EPS nach JPG läuft client-seitig über Ghostscript.js,
eine WebAssembly-Portierung des bekannten PostScript-Interpreters Ghostscript (Artifex Software).
Das WASM-Modul ist rund 8-12 MB gross und wird per dynamischem
import() erst beim ersten File-Drop in den Browser geladen, der Initial-Load der
Seite bleibt damit unter 100 kB JavaScript. Nach dem Erstladen ist das Modul gecacht, weitere
Konvertierungen laufen ohne Netzwerk-Roundtrip.
Der konkrete Render-Aufruf sieht ungefähr so aus:
const gs = await loadGhostscriptOnce();
const pixelData = await gs.render({
data: new Uint8Array(epsBuffer),
resolution: 150, // DPI vom Nutzer
device: 'png16m' // Zwischenformat für scharfe Pixel
});
Das gerenderte Pixel-Array geht durch ctx.putImageData() in eine
OffscreenCanvas der gleichen Grösse, dann erzeugt
canvas.convertToBlob mit Type image/jpeg und der gewählten
Qualität die finale JPG-Datei.
Safari unter Version 16.4 unterstützt convertToBlob() nicht, für diese
Browser nutzen wir einen toDataURL-Fallback mit manüller Base64-Dekodierung.
DPI-Mathematik
Die Pixelausgabe folgt der einfachen Formel pixel = inch * dpi. Ein EPS-Logo mit BoundingBox 200 x 100 pt (PostScript-Punkte, 1 pt = 1/72 inch) ergibt umgerechnet 2,778 x 1,389 inch. Bei 300 dpi rendert die Engine daraus ein 833 x 417 Pixel großes JPG, bei 72 dpi nur 200 x 100 Pixel.
- 72 dpi: Web und Bildschirm, kleine Dateigrösse
- 96 dpi: Windows-Standardauflösung, leicht grösser
- 150 dpi: hochauflösender Bildschirm und digitale Druckvorschau
- 300 dpi: professioneller Druck (Flyer, Plakate, Visitenkarten)
Die EXIF-Metadaten der JPG-Ausgabe enthalten die gewählte DPI. Manche Bildbearbeitungs- programme (zum Beispiel Adobe Photoshop) lesen diese Information für die Druckvorbereitung.
Hintergrundfarbe und Transparenz
EPS unterstützt Transparenz und Alpha-Kanäle, JPG nicht. Wenn die EPS-Datei einen transparenten Hintergrund hat (zum Beispiel ein Logo ohne Hintergrund), füllt Ghostscript.js den Alpha-Kanal mit weiß. CMYK-Farbprofile aus EPS werden implizit nach sRGB konvertiert, ein Verlust bei kräftigen Druckfarben (Pantone-Spotcolors, tiefe Cyan- und Magenta-Töne) ist technisch unvermeidlich, weil JPG nur den sRGB-Farbraum kennt.
Privacy-by-Design, kein Server-Upload
Die EPS-Datei verlässt den Browser nicht. Sie können das in den Entwicklertools unter dem Netzwerk-Tab selbst verifizieren: beim Klick auf Konvertieren wird kein ausgehender Request mit dem Datei-Inhalt gestartet. Das macht epsjpg.de geeignet für vertrauliche Kundengrafiken, unveröffentlichte Logos oder CI-Dokumente eines Konzerns, bei denen ein Cloud-Konverter wie CloudConvert oder Convertio nicht in Frage kommt.
Technisch funktioniert das so: nach dem File-Drop wird der File-Inhalt als
ArrayBuffer gelesen und direkt an die WASM-Engine übergeben. Der gesamte
Render-Schritt läuft in einer in-memory-WASM-Instanz; das Ergebnis als JPG-Blob bleibt
ebenfalls im Browser-Speicher. URL.createObjectURL() erzeugt einen lokalen
Blob-URL für Vorschau und Download.
50-MB-Grenze
EPS-Dateien bis zu 50 MB werden unterstützt. Die Prüfung erfolgt clientseitig vor dem WASM-Load. Bei sehr großen Dateien und 300 dpi kann der Browser-Arbeitsspeicher (typisch 1-2 GB pro Tab) zum limitierenden Faktor werden, in dem Fall empfehlen wir 150 dpi, was die Pixelmenge auf ein Viertel reduziert.
Was epsjpg.de nicht macht
- Keine Server-Verarbeitung: die EPS-Datei wird ausschließlich im Browser gerendert
- Keine Inhaltsanalyse: kein OCR, kein Logo-Recognition, kein KI-Training
- Kein dauerhaftes Logging: auch die WASM-Engine selbst loggt nichts
- Kein Tracking-Pixel im Tool: AdSense und Google-Analytics laufen nicht, nur optional Umami als anonyme Statistik
Korrektur-Policy
Wenn dir ein Bug auffällt (etwa ein falsches Render-Ergebnis, ein verlorener Hintergrund oder ein inhaltlicher Fehler in einem Ratgeber), schreib an info@akara-solutions.de. Bestätigte Korrekturen dokumentieren wir öffentlich unter Korrekturen.
Verantwortung
Für die Engine und ihre redaktionelle Pflege sind Mateusz Viola (WASM-Engine, DPI-Math, Lazy-Load), Jan-Tristan Rudat (PostScript-Geschichte, JPEG-Standard, EPS-vs-SVG-vs-PDF-Vergleich) und Eike-Christian Ramcke (UrhG, DSGVO Art. 6 lit. f) zuständig. Inhaltlich Verantwortlicher gem. § 18 Abs. 2 MStV ist Eike-Christian Ramcke, Geschäftsführer der AKARA Solutions GmbH (vollständige Angaben im Impressum).
Quellen
- Artifex Software: Ghostscript Documentation. ghostscript.com/doc/current, abgerufen 2026.
- ochachacha: ps-wasm, WebAssembly port of Ghostscript. github.com/ochachacha/ps-wasm.
- Adobe Systems: Encapsulated PostScript File Format Specification, Version 3.0, 1992.
- ISO/IEC 10918-1:1994: Information technology, Digital compression and coding of continuous-tone still images (JPEG-Standard).
- Verordnung (EU) 2016/679 (Datenschutz-Grundverordnung), insbesondere Art. 6 Abs. 1 lit. f (berechtigtes Interesse).
- Urheberrechtsgesetz (UrhG) §§ 16, 23, 53 in der aktuellen Fassung.