Zum Inhalt springen

Base64 Bild-Decoder | Bilder Online Dekodieren & Vorschau

Kostenfreies Online-Tool zum Dekodieren von Base64-Bildern. Dekodieren und Vorschau von Base64-Strings als JPEG, PNG, GIF, WebP oder SVG-Bildern. Funktioniert mit Daten-URLs und reinem Base64.

Base64 Bild-Decoder und -Betrachter

FĂŒgen Sie einen base64-codierten Bildstring ein und dekodieren Sie ihn, um das Bild anzuzeigen.

Bildvorschau

Kein Bild zum Anzeigen. FĂŒgen Sie einen base64-String ein, um ihn automatisch zu dekodieren.

UnterstĂŒtzt JPEG, PNG, GIF und andere gĂ€ngige Bildformate.

Anleitung

1. FĂŒgen Sie einen base64-codierten Bildstring in das Textfeld oben ein.

2. Das Bild wird automatisch dekodiert, wÀhrend Sie tippen, oder klicken Sie auf 'Bild dekodieren'.

3. Das dekodierte Bild erscheint im Vorschaubereich unten.

Hinweis: Der String sollte mit 'data:image/' beginnen fĂŒr beste Ergebnisse, aber das Tool wird versuchen, Strings ohne dieses PrĂ€fix ebenfalls zu dekodieren.

Ladekalkulator...
📚

Dokumentation

Was ist ein Base64-Bilddecoder?

Ein Base64-Bilddecoder ist ein Werkzeug, das eine Base64-codierte Textzeichenfolge wieder in ein Bild umwandelt. Base64 ist eine Möglichkeit, BinĂ€rdaten, etwa die Bytes einer Bilddatei, ausschließlich mit 64 einfachen Textzeichen zu schreiben (Buchstaben, Ziffern, +, / und = als AuffĂŒllzeichen). Browser, E-Mails und viele APIs speichern Bilder auf diese Weise, damit ein Bild als einfacher Text statt als separate Datei ĂŒbertragen werden kann. Der Decoder kehrt diesen Vorgang um: Die Zeichenfolge wird eingefĂŒgt, und das ursprĂŒngliche Bild wird angezeigt.

Das Daten-URL-Format

Im Web wird ein Base64-Bild meist als Data-URL geschrieben. Das URL-Schema data: wurde 1998 definiert. Das Muster lautet:

1data:[<media type>];base64,<data>
2

Zum Beispiel:

1data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
2

Jeder Teil hat eine bestimmte Funktion:

  • data: kennzeichnet die Adresse als Daten-URL und nicht als normale Webadresse.
  • image/png ist der MIME-Typ und teilt dem Browser mit, um welche Art von Datei es sich handelt.
  • ;base64 besagt, dass die Daten nach dem Komma Base64-codiert sind. Die Angabe ist optional. Fehlt sie, sind die Daten einfacher Text oder prozentcodierter Text.
  • Alles nach dem Komma ist das codierte Bild selbst.

Funktionsweise des Decoders

Die Decodierung erfolgt in vier Schritten.

  1. Das Werkzeug prĂŒft, ob die Zeichenfolge mit data: beginnt. Ist das der Fall, liest es den MIME-Typ aus diesem PrĂ€fix.
  2. Es entfernt alle Leerzeichen, Tabulatoren und ZeilenumbrĂŒche, da lange Base64-Zeichenfolgen manchmal auf mehrere Zeilen umbrochen sind. Dies folgt der Regel zur nachsichtigen Base64-Decodierung, die Browser verwenden und deren erster Schritt das Entfernen aller Leerzeichen ist.
  3. Der Base64-Text wird wieder in rohe Bytes decodiert.
  4. Es betrachtet die ersten Bytes des Ergebnisses. Jedes gĂ€ngige Bildformat beginnt mit einer festen Bytefolge, die Signatur oder „Magic Number“ genannt wird. PNG-Dateien beginnen mit 89 50 4E 47, JPEG-Dateien mit FF D8 FF und so weiter. Der Decoder verwendet die Tabelle der Bildsignaturen aus dem WHATWG-MIME-Sniffing-Standard. Er gleicht diese Signaturen ab, um den Bildtyp zu bestĂ€tigen und bei Bedarf zu korrigieren.

Eine data:-URL, deren Typ nicht image/... lautet, wird abgelehnt, da es sich nicht um ein Bild handelt. Eine data:image/...-URL ohne ;base64 wird unverÀndert an den Browser weitergegeben.

Wenn die Zeichenfolge kein data:-PrĂ€fix hat, behandelt der Decoder sie als rohe Base64-Daten, decodiert sie und liest die Signatur auf dieselbe Weise. Stimmen die Bytes mit keiner bekannten Bildsignatur ĂŒberein und sehen sie auch nicht wie SVG-Text aus, meldet der Decoder, dass die Zeichenfolge offenbar kein Bild ist. Er rĂ€t kein Format und verwendet auch keinen Standardtyp als Ersatz.

SVG wird anders behandelt, weil SVG ein Textformat (XML) und kein BinĂ€rformat ist und daher keine feste Byte-Signatur hat. Der Decoder prĂŒft stattdessen, ob der decodierte Text mit einem <svg-Tag beginnt oder mit einer XML-Deklaration, die ein solches Tag enthĂ€lt.

Formel fĂŒr die GrĂ¶ĂŸe von Base64-Bildern

Base64 wandelt jeweils 3 Bytes BinĂ€rdaten in 4 Textzeichen um. Die Formel fĂŒr die codierte LĂ€nge lautet:

1encoded_characters = 4 × ⌈original_bytes Ă· 3⌉
2

Die Symbole ⌈ ⌉ bedeuten „auf die nĂ€chste ganze Zahl aufrunden“, da Base64 immer mit Gruppen von 4 Zeichen arbeitet und eine unvollstĂ€ndige Gruppe mit =-Zeichen auffĂŒllt.

Bei großen Dateien ist das Ergebnis etwa ein Drittel grĂ¶ĂŸer als das Original, da 4 Ă· 3 ≈ 1,33 ist. Bei kleinen Dateien kann der prozentuale Anstieg grĂ¶ĂŸer ausfallen, weil das Aufrunden auf die nĂ€chste Gruppe von 4 Zeichen stĂ€rker ins Gewicht fĂ€llt, wenn nur wenige Daten vorhanden sind.

Durchgerechnetes Beispiel

Das obige PNG-Beispiel wird zu 85 Bytes Bilddaten decodiert. Mit der Formel:

14 × ⌈85 Ă· 3⌉ = 4 × 29 = 116
2

Die Base64-Zeichenfolge ist tatsĂ€chlich 116 Zeichen lang, was der Berechnung entspricht. Das ist eine Zunahme um 36 % gegenĂŒber den ursprĂŒnglichen 85 Bytes (116 Ă· 85 ≈ 1,36), also etwas mehr als die Angabe von 33 %, weil die Datei so klein ist.

UnterstĂŒtzte Bildformate

Der Decoder liest die Byte-Signatur der decodierten Daten, um das Format zu bestimmen. Er erkennt die folgenden Typen:

FormatMIME-TypGeprĂŒfte Signatur
PNGimage/png89 50 4E 47 0D 0A 1A 0A
JPEGimage/jpegFF D8 FF
GIFimage/gifGIF87a oder GIF89a
WebPimage/webpRIFF 
 WEBP
BMPimage/bmpBM
ICO / CURimage/x-icon00 00 01 00 oder 00 00 02 00
SVGimage/svg+xmlAls Text erkannt, der mit einem <svg-Tag beginnt

So wird ein Base64-Bild decodiert

  1. Die Base64-Zeichenfolge wird mit oder ohne data:image/...-PrÀfix aus HTML, CSS, einer API-Antwort oder einer E-Mail kopiert.
  2. Sie wird in das Eingabefeld eingefĂŒgt.
  3. Das Bild wird kurz nach dem Ende der Eingabe automatisch decodiert oder durch DrĂŒcken der DecodierschaltflĂ€che.
  4. Das decodierte Bild erscheint im Vorschaubereich. Seine Daten-URL kann mit dem Button „Bild-URL kopieren“ kopiert werden. Das Bild selbst lĂ€sst sich speichern, indem man im Vorschaubereich mit der rechten Maustaste darauf klickt und das Speichern des Bildes auswĂ€hlt, da es im Browser als normales Bildelement dargestellt wird.

HĂ€ufige Verwendungen von Base64-Bildern

  • Einbettung in HTML, CSS oder JavaScript: Werden die Bilddaten direkt in den Code eingefĂŒgt, ist keine separate Dateianforderung nötig.
  • E-Mail-Vorlagen: Einige E-Mail-Programme blockieren standardmĂ€ĂŸig extern verknĂŒpfte Bilder, ein eingebettetes Base64-Bild wird jedoch weiterhin angezeigt.
  • HTML-Werkzeuge in einer einzigen Datei: Eine ganze Seite einschließlich ihrer Bilder kann als eine eigenstĂ€ndige Datei ausgeliefert werden.
  • API-Antworten: Ein Bild kann innerhalb einer JSON-Nutzlast ĂŒbertragen werden, statt einen eigenen Endpunkt zu benötigen.
  • CSS-HintergrĂŒnde und Symbole: Kleine Symbole werden manchmal direkt als Daten-URL in ein Stylesheet geschrieben.

Vor- und Nachteile von Base64-Bildern

Base64-Codierung ist praktisch, aber nicht kostenlos:

  • Der codierte Text ist ungefĂ€hr ein Drittel grĂ¶ĂŸer als die ursprĂŒngliche Datei.
  • Browser können ein eingebettetes Bild nicht auf dieselbe Weise zwischenspeichern wie eine verknĂŒpfte Datei. Daher wird es jedes Mal erneut heruntergeladen, wenn die umgebende Seite oder das Stylesheet geladen wird.
  • Der Browser muss den Base64-Text decodieren, bevor er das Bild anzeigen kann, was einen geringen zusĂ€tzlichen Rechenaufwand verursacht.
  • Wegen der grĂ¶ĂŸeren Datenmenge und des fehlenden Cachings eignet sich das Einbetten per Base64 am besten fĂŒr kleine Bilder wie Symbole oder einfache Logos. GrĂ¶ĂŸere Fotos werden meist besser als gewöhnliche Bilddateien ausgeliefert.

HĂ€ufig gestellte Fragen

Was ist ein Base64-Bilddecoder?

Es handelt sich um ein Werkzeug, das eine Base64-codierte Textzeichenfolge wieder in ein anzeigbares Bild umwandelt, etwa in eine PNG-, JPEG-, GIF-, WebP-, BMP- oder SVG-Datei.

Wie decodiere ich ein Base64-Bild?

FĂŒgen Sie die Base64-Zeichenfolge mit oder ohne data:image/...-PrĂ€fix in den Decoder ein. Er liest und decodiert die Zeichenfolge und zeigt das resultierende Bild an.

Kann eine Base64-Zeichenfolge ohne das Daten-URL-PrÀfix decodiert werden?

Ja. Der Decoder behandelt sie als rohe Base64-Daten, decodiert die Bytes und liest die ersten Bytes, um anhand ihrer Signatur das Format zu bestimmen, etwa PNG, JPEG, GIF, WebP, BMP oder ICO. SVG wird erkannt, indem im decodierten Text nach einem <svg-Tag gesucht wird. Passt nichts davon, meldet der Decoder, dass die Zeichenfolge offenbar kein Bild ist, statt ein Format zu erraten.

Warum wird mein Base64-Bild nicht decodiert?

Die hĂ€ufigsten Ursachen sind eine Zeichenfolge, die mittendrin abgeschnitten wurde, oder zusĂ€tzliche Zeichen, die nicht zum Base64-Alphabet gehören. Auch die URL-sichere Variante, die - und _ statt + und / verwendet, wird abgelehnt. Fehlendes AuffĂŒllen mit = am Ende ist meist kein Problem. Meist hilft es, die gesamte Zeichenfolge zu kopieren, einschließlich ihres PrĂ€fixes data:image/..., falls vorhanden.

Ist Base64-Codierung eine Form von Sicherheit oder VerschlĂŒsselung?

Nein. Base64 ist lediglich eine Möglichkeit, Bytes als Text darzustellen; es verbirgt nichts. Jeder kann eine Base64-Zeichenfolge innerhalb weniger Sekunden mit einem kostenlosen Werkzeug decodieren. Daher sollte das Verfahren niemals zum Schutz privater Bilder oder anderer Daten verwendet werden.

Wie viel grĂ¶ĂŸer ist eine Base64-Zeichenfolge als das ursprĂŒngliche Bild?

Bei grĂ¶ĂŸeren Dateien ist sie ungefĂ€hr ein Drittel grĂ¶ĂŸer, da jeweils 3 Bytes der ursprĂŒnglichen Daten zu 4 Textzeichen werden. Ein 100-KB-Bild wird nach der Codierung ungefĂ€hr 133 KB groß. Bei kleinen Bildern kann die prozentuale Zunahme wegen des Aufrundens etwas höher ausfallen.

Historie

Base64 stammt aus der E-Mail, die einst nur reinen Text ĂŒbertrug. Eine Spezifikation fĂŒr Privacy-Enhanced Mail von 1987 beschrieb, jeweils 3 Bytes in 4 druckbare Zeichen aus einem Zeichensatz mit 64 Zeichen umzuwandeln. Das data:-URL-Schema von 1998 machte es spĂ€ter möglich, Base64-Bilder direkt in Webseiten einzubetten. Die aktuelle Definition von Base64 ist RFC 4648 (2006).

Referenzen

  1. IETF. RFC 4648: The Base16, Base32, and Base64 Data Encodings. RFC 4648 – 3 Bytes werden zu 4 Zeichen; AuffĂŒllen mit =.
  2. IETF. RFC 2397: The "data" URL scheme. RFC 2397 – Syntax der Data-URL; ;base64 ist optional; veröffentlicht 1998.
  3. WHATWG. Infra Standard. Nachsichtige Base64-Decodierung – Entfernen von Leerzeichen; Behandlung des AuffĂŒllens.
  4. WHATWG. MIME Sniffing Standard. Abgleich eines Bildtypmusters – Byte-Signaturen von Bildern.
  5. MDN Web Docs. Base64. Base64-Glossareintrag – Die codierte Ausgabe ist etwa ein Drittel grĂ¶ĂŸer.
  6. IETF. RFC 989: Privacy Enhancement for Internet Electronic Mail, Part I. RFC 989 – E-Mail-Codierung aus dem Jahr 1987: 3 Bytes werden zu 4 druckbaren Zeichen.