Datei hochladen
  1. base64hub
  2. Bild-Tools
  3. Base64 in Bild

Base64 in Bild

Fügen Sie Base64 oder eine ganze data:image/...-URI ein und sehen Sie das Bild sofort. Das Tool liest die Dateisignatur, der Download bekommt also die richtige Endung, auch wenn die Zeichenkette kein Präfix hat.

Kostenlos ohne Anmeldung, ohne Limits Lokal kein Upload Automatisch Format aus den ersten Bytes Aktualisiert 27.10.2026
Eingabe –Ausgabe –Größe –

Wird in Ihrem Browser verarbeitet. Diese Seite kann Ihre Daten nirgendwohin senden – woher wir das wissen

So wandeln Sie Base64 in ein Bild um

  1. Fügen Sie die Zeichenkette in das Feld ein. Einen langen Wert, der in einer Datei gespeichert ist, öffnen Sie mit .txt-Datei öffnen oder legen die Datei auf dem Feld ab.
  2. Mit Live wird das Bild schon beim Einfügen dekodiert. Die Statuszeile zeigt, ob das Base64 gültig ist, die Variante (Standard oder Base64URL), die Anzahl der Bytes und das Format bei Erkannt.
  3. Prüfen Sie die Vorschau. Darunter sehen Sie Typ, MIME-Typ, Endung, Größe in Bytes, Pixelabmessungen und den SHA-256-Hash.
  4. Passen Sie bei Bedarf Dateiname an und drücken Sie Datei herunterladen. Als Data-URI kopieren liefert Ihnen stattdessen eine saubere data:-URI für HTML oder CSS.

Beispiel lädt ein kleines PNG, damit Sie sehen, wie die Ausgabe aussieht, bevor Sie Ihre eigenen Daten einfügen.

Was Sie einfügen können

Der Decoder toleriert fast alles, was das Base64 umgibt, denn Bild-Zeichenketten kommen selten sauber an:

  • Reines Base64, wie eine API es liefert: iVBORw0KGgoAAAANSUhEUg...
  • Eine Data-URI: data:image/png;base64,iVBORw0KGgo...
  • Code, der eine enthält: background-image: url("data:image/svg+xml;base64,..."), <img src="data:image/jpeg;base64,...">, ein Markdown-Bild ![](data:...) oder ein JSON-Feld, dessen Wert eine Data-URI ist. Die erste Data-URI wird für Sie extrahiert.
  • Umbrochenes Base64 aus E-Mail-Quelltexten oder PEM-artigen Ausgaben, mit Leerzeichen oder Zeilenumbrüchen alle 64 oder 76 Zeichen.
  • URL-sicheres Base64 mit - und _, Zeichenketten ohne =-Padding und Werte in Anführungszeichen.

Steht das Base64 ohne data:-Präfix in einem JSON-Feld, kopieren Sie nur den Wert zwischen den Anführungszeichen. Ein ganzes JSON-Dokument wird als ungültiges Base64 abgelehnt, da { nicht zum Alphabet gehört.

Wie das Format erkannt wird

Jedes Bildformat beginnt mit einer festen Signatur, seinen Magic Bytes. Das Tool dekodiert die Zeichenkette und vergleicht die ersten Bytes mit diesen Signaturen. Eine als image/png gekennzeichnete Zeichenkette, die in Wirklichkeit ein JPEG enthält, wird deshalb als JPEG erkannt. Dieselben Signaturen sind auch im Base64 selbst sichtbar, was beim Lesen von Logs oder Datenbank-Dumps hilft:

FormatErste BytesBase64 beginnt mitMIME-Typ
PNG89 50 4E 47 0D 0A 1A 0AiVBORw0KGgoimage/png
JPEGFF D8 FF/9j/image/jpeg
GIFGIF89a / GIF87aR0lGODlh / R0lGODdhimage/gif
WebPRIFF, Größe, WEBPUklGR, mit XRUJQ bei Zeichen 12–16image/webp
SVG<svg / <?xmlPHN2Zy / PD94bWwgimage/svg+xml
ICO00 00 01 00AAABAAimage/x-icon
BMPBMQkimage/bmp
HEICGröße, ftypheicAAAA, dann eXBoZWlj ab Zeichen 9image/heic
TIFFII* / MM*SUkqAA / TU0AKgimage/tiff

AVIF, JPEG XL und Cursor-Dateien (.cur) werden ebenfalls erkannt. Nennt eine Data-URI einen Typ, der Inhalt aber einen anderen, zeigt ein Hinweis beides. Sind die Daten gar kein Bild, zum Beispiel ein PDF, sagt die Seite das und bietet eine Schaltfläche Als .pdf herunterladen an. Die Seite gängige Base64-Präfixe listet Signaturen für viele weitere Dateitypen.

Warum das Bild nicht erscheint

Die Zeichenkette wurde abgeschnitten. Base64-Werte werden durch Zeilenlimits in Logs, Spaltengrößen in Datenbanken, die Zellgrenze von Tabellenkalkulationen (32.767 Zeichen) und beim Kopieren aus Terminals gekürzt. Ein JPEG oder PNG wird dann nur teilweise dargestellt, oder die Vorschau scheitert. Macht ein Zeichen zu viel oder zu wenig die Länge unmöglich, erhalten Sie den Fehler „Falsche Länge“. Eine gültige, aber zu kurze Zeichenkette wird ohne Fehler dekodiert; vergleichen Sie also Größe mit der erwarteten Dateigröße.

Der MIME-Typ in der Data-URI ist falsch. Steht data:image/png vor JPEG-Bytes, zeigen Browser das Bild meist trotzdem an, weil sie Rasterformate selbst erkennen; andere Software vertraut dagegen der Angabe. SVG erkennen Browser nie selbst: Mit einem anderen Typ als image/svg+xml wird es in einem <img> nicht dargestellt. Das Tool verwendet für Vorschau und Download das echte Format.

Zeichen wurden unterwegs verändert. Ein +, das durch eine Formularkodierung gegangen ist, kommt oft als Leerzeichen zurück. Enthält eine einzeilige Zeichenkette Leerzeichen und überhaupt kein +, wandelt der Decoder die Leerzeichen zurück in +; kommen beide vor, kann er sie nicht unterscheiden, und das Bild wird womöglich zu falschen Bytes dekodiert. JSON aus manchen Bibliotheken maskiert Schrägstriche als \/; der Decoder entfernt diese Escapes und literale \n-Sequenzen für Sie. Für alles Unordentlichere listet Base64 reparieren jede Korrektur auf, die es vornimmt.

Es ist doppelt kodiert. Sind die dekodierten Bytes selbst Base64-Text, weist ein Hinweis darauf hin, und Erneut dekodieren entpackt die nächste Schicht. Zurück kehrt zum vorherigen Schritt zurück. Dasselbe funktioniert bei Data-URIs in Base64 und bei gzip- oder zlib-komprimierten Daten.

Der Browser kann das Format nicht anzeigen. HEIC-Fotos vom iPhone werden nur in Safari ab Version 17 angezeigt, TIFF nur in Safari, und JPEG XL braucht Safari 17, Chrome 155 oder Firefox 158 oder neuer. Die Vorschau meldet dann, dass der Browser das Bild nicht anzeigen kann, die Bytes sind aber intakt: Datei herunterladen speichert eine funktionierende Datei, die eine Foto-App öffnen kann.

Es ist kein Bild. Eine Base64-Zeichenkette, die mit JVBER beginnt, ist ein PDF, UEsDB ist ein ZIP-Archiv. Nutzen Sie Base64 in Datei, das Dokumente, Archive, Audio und mehr in der Vorschau zeigt.

Mit der richtigen Endung speichern

Die Felder Endung und MIME-Typ werden aus dem erkannten Format ausgefüllt, bis Sie sie bearbeiten, ein PNG wird also als .png gespeichert, auch wenn in der Eingabe nirgends „PNG“ stand. Windows und Upload-Formulare beurteilen eine Datei nach ihrer Endung. Benennen Sie ein WebP in .jpg um, ist es innen trotzdem WebP, und strenge Software lehnt es ab.

Sie können beide Felder überschreiben, etwa um ein Icon als .cur zu speichern oder einen eigenen MIME-Typ einzutragen. Ein geänderter MIME-Typ baut auch die Vorschau mit diesem Typ neu auf.

SHA-256 und Hex-Dump

Der SHA-256-Hash unter der Vorschau wird über die dekodierten Bytes berechnet. Vergleichen Sie ihn mit einem Hash vom Absender, aus einem Datenbankeintrag oder von sha256sum image.png, um zu belegen, dass das gespeicherte Bild Byte für Byte genau die kodierte Datei ist. Zum Hashen anderer Daten siehe das SHA-256-Tool.

Hex-Dump anzeigen zeigt die ersten 512 Bytes. So untersuchen Sie einen Header am schnellsten: Breite und Höhe eines PNG bei Offset 0x10, die Markierung Exif in einem Kamera-JPEG oder das Bildverzeichnis einer ICO-Datei.

Datenschutz: Bilder bleiben auf Ihrem Gerät

Base64-Bilder sind oft Dinge, die Sie nicht auf irgendeine Website hochladen würden: Screenshots aus einem Fehlerbericht, Scans von Personalausweis oder Reisepass, aus einem Patientenportal exportierte medizinische Bilder, auf einem Tablet erfasste Unterschriften. Diese Seite dekodiert sie vollständig in Ihrem Browser. Die Content Security Policy der Seite blockiert Netzwerkanfragen ihrer Skripte, außer dem Seitenaufrufzähler von Cloudflare, und Datei herunterladen speichert aus einer lokalen blob:-URL. Nichts, was Sie einfügen, wird von der Website gespeichert.

Ein Base64-Bild im Code dekodieren

In Python entfernen Sie das Präfix, ergänzen das Padding und wählen die Endung anhand der Signatur:

import base64, re

def save_image(b64: str, stem: str = "image") -> str:
    b64 = re.sub(r"^data:[^,]*;base64,", "", b64.strip(), flags=re.I)
    b64 = re.sub(r"\s+", "", b64).replace("-", "+").replace("_", "/")
    data = base64.b64decode(b64 + "=" * (-len(b64) % 4))
    if data.startswith(b"\x89PNG"):
        ext = "png"
    elif data.startswith(b"\xff\xd8\xff"):
        ext = "jpg"
    elif data.startswith(b"GIF8"):
        ext = "gif"
    elif data[:4] == b"RIFF" and data[8:12] == b"WEBP":
        ext = "webp"
    else:
        ext = "bin"
    with open(f"{stem}.{ext}", "wb") as f:
        f.write(data)
    return f"{stem}.{ext}"

Im Browser machen Sie aus der Zeichenkette einen Blob und zeigen ihn über eine Object-URL an:

function base64ToBlob(b64, type = "image/png") {
  const bin = atob(b64.replace(/^data:[^,]*;base64,/, "").replace(/\s+/g, ""));
  const bytes = Uint8Array.from(bin, c => c.charCodeAt(0));
  return new Blob([bytes], { type });
}

img.src = URL.createObjectURL(base64ToBlob(str));

Mehr zum Lesen und Schreiben von Binärdaten finden Sie unter Base64 in Python und Base64 in JavaScript. Für die Gegenrichtung kodiert Bild in Base64 ein Bild, mit Skalierung und Formatumwandlung.

Häufige Fragen

Brauche ich das Präfix data:image/png;base64,?

Nein. Reines Base64 funktioniert, und der Typ wird aus den dekodierten Bytes gelesen. Bei einer vollständigen Data-URI wird das Präfix entfernt und der angegebene Typ mit dem Inhalt abgeglichen.

Woran erkenne ich, welches Bildformat eine Base64-Zeichenkette hat?

An den ersten Zeichen: iVBORw0KGgo ist PNG, /9j/ ist JPEG, R0lGOD ist GIF, UklGR ist eine RIFF-Datei wie WebP. Wenn Sie die Zeichenkette oben einfügen, nennt das Feld Erkannt das Format.

Warum wirkt das dekodierte Bild unten abgeschnitten?

Die Base64-Zeichenkette wurde beim Kopieren, Loggen oder Speichern gekürzt. Browser zeichnen, was sie von einem unvollständigen PNG oder JPEG darstellen können. Kopieren Sie den Wert erneut aus der Quelle; kein Tool kann Bytes wiederherstellen, die nicht in der Zeichenkette stehen.

Ist es sicher, hier Screenshots oder Ausweisfotos zu dekodieren?

Das Dekodieren übernimmt das JavaScript dieser Seite, und ihre Content Security Policy blockiert jede Netzwerkanfrage der Seite außer dem Seitenaufrufzähler von Cloudflare, sodass das Bild nirgendwohin gesendet wird. Zur Kontrolle können Sie beim Dekodieren den Netzwerk-Tab in den Entwicklertools Ihres Browsers beobachten.

Kann das Tool das dekodierte Bild in ein anderes Format umwandeln?

Nein, es speichert genau die Bytes, die kodiert wurden. Für eine PNG-, JPEG- oder WebP-Version laden Sie die Datei herunter, schicken sie durch Bild in Base64 mit Umwandeln in und dekodieren dann das Ergebnis.