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.
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>
2Zum Beispiel:
1data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
2Jeder Teil hat eine bestimmte Funktion:
data:kennzeichnet die Adresse als Daten-URL und nicht als normale Webadresse.image/pngist der MIME-Typ und teilt dem Browser mit, um welche Art von Datei es sich handelt.;base64besagt, 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.
- Das Werkzeug prĂŒft, ob die Zeichenfolge mit
data:beginnt. Ist das der Fall, liest es den MIME-Typ aus diesem PrĂ€fix. - 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.
- Der Base64-Text wird wieder in rohe Bytes decodiert.
- 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 mitFF D8 FFund 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â
2Die 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
2Die 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:
| Format | MIME-Typ | GeprĂŒfte Signatur |
|---|---|---|
| PNG | image/png | 89 50 4E 47 0D 0A 1A 0A |
| JPEG | image/jpeg | FF D8 FF |
| GIF | image/gif | GIF87a oder GIF89a |
| WebP | image/webp | RIFF ⊠WEBP |
| BMP | image/bmp | BM |
| ICO / CUR | image/x-icon | 00 00 01 00 oder 00 00 02 00 |
| SVG | image/svg+xml | Als Text erkannt, der mit einem <svg-Tag beginnt |
So wird ein Base64-Bild decodiert
- Die Base64-Zeichenfolge wird mit oder ohne
data:image/...-PrĂ€fix aus HTML, CSS, einer API-Antwort oder einer E-Mail kopiert. - Sie wird in das Eingabefeld eingefĂŒgt.
- Das Bild wird kurz nach dem Ende der Eingabe automatisch decodiert oder durch DrĂŒcken der DecodierschaltflĂ€che.
- 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
- IETF. RFC 4648: The Base16, Base32, and Base64 Data Encodings. RFC 4648 â 3 Bytes werden zu 4 Zeichen; AuffĂŒllen mit
=. - IETF. RFC 2397: The "data" URL scheme. RFC 2397 â Syntax der Data-URL;
;base64ist optional; veröffentlicht 1998. - WHATWG. Infra Standard. Nachsichtige Base64-Decodierung â Entfernen von Leerzeichen; Behandlung des AuffĂŒllens.
- WHATWG. MIME Sniffing Standard. Abgleich eines Bildtypmusters â Byte-Signaturen von Bildern.
- MDN Web Docs. Base64. Base64-Glossareintrag â Die codierte Ausgabe ist etwa ein Drittel gröĂer.
- 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.