araç köşesi

Base64'ten Görsele

Base64 kodunu veya data URI'yi çözün, görseli canlı önizleyip dosya olarak indirin

Verileriniz sizde kalır. Dönüşüm tarayıcının içinde yapılır, hiçbir şey sunucuya gitmez.

Nasıl çalışır?

Base64 kodunu giriş paneline yapıştırın; görsel geçerliyse önizleme anında belirir ve İndir düğmesi dosyayı algılanan uzantıyla kaydeder. Kodu tertemiz ayıklamanız gerekmez: bir CSS dosyasından url('data:image/png;base64,…') satırını tırnaklarıyla, bir HTML kaynağından src değerini olduğu gibi yapıştırabilirsiniz — araç data URI'yi kendisi bulur, satır sonlarını ve tırnak artıklarını temizler. Örneğin bir e-posta şablonunun kaynağında gömülü duran 40 KB'lık logo satırını yapıştırdığınızda sonuç satırında "PNG · 40 KB · 200×80 px" gibi bir döküm görürsünüz; dosya türü, kodun başındaki etikete değil çözülen verinin ilk baytlarına (dosya imzasına) bakılarak belirlenir. Aynı şekilde JWT veya API yanıtlarında gelen tiresiz-eğik çizgisiz Base64URL kodu da kabul edilir. Veriniz hiçbir sunucuya gitmez; çözme tamamen tarayıcınızın içinde olur.

Bu araç base64 to image, base64 decode image aramalarıyla da biliniyor.

Base64 nedir?

Base64, ikili veriyi 64 karakterlik güvenli bir alfabeyle metne çeviren kodlamadır; bu araç o işlemin tersini, yani çözmeyi yapar. Çözme sırasında her 4 karakter 3 bayta iner, dolayısıyla dosya kodlu halinden yaklaşık dörtte bir oranında küçülür. Kodun sonundaki = işaretleri dolgudur ve verinin bayt sayısını 3'e tamamlar; kopyalarken kaybolurlarsa bu araç dolguyu kendisi tamamlar. Base64 bir şifreleme değildir: kodu okuyabilen herkes veriyi geri çözebilir, bu yüzden gizli kalması gereken görseller Base64 içinde de gizli sayılmaz.

Dosya imzası (sihirli bayt) nedir?

Dosya imzası, bir dosyanın ilk baytlarında duran ve türünü ele veren sabit dizidir: PNG her zaman 89 50 4E 47 baytlarıyla, JPG FF D8 FF ile, GIF ise GIF87a veya GIF89a harfleriyle başlar. İşletim sistemleri uzantıya bakarken, sağlam yazılmış programlar asıl bu imzaya güvenir; çünkü uzantı ve data URI etiketi elle yazılır ve yanlış olabilir. Bu araç çözülen verinin türünü imzadan okur: etiket ne derse desin dosya, gerçek içeriğine uyan uzantıyla iner ve görüntüleyicilerde sorunsuz açılır.

Base64 ile Base64URL arasındaki fark nedir?

İki alfabe yalnızca iki karakterde ayrılır: standart Base64'teki + ve / karakterleri, Base64URL'de - ve _ olur. Sebep pratiktir — + ve / karakterleri web adreslerinde ve dosya adlarında özel anlam taşır, bu yüzden URL'ye veya JWT'ye gömülecek veri güvenli ikizle kodlanır. Base64URL çoğu zaman sondaki = dolgusunu da atar. E-posta ve CSS kaynaklarında standart alfabe, JWT ve API belirteçlerinde URL güvenli alfabe görürsünüz. Bu araç ikisini de kabul eder: tire ve alt çizgiyi standart karşılıklarına çevirir, eksik dolguyu tamamlar ve veriyi öyle çözer.

Kod çözülmüyorsa: en sık üç neden

Birinci neden eksik kopyalamadır: Base64 kodu tek uzun satırdır ve editörler genellikle görünen kısmı kopyalar. Kodun sonu kesikse görsel ya hiç açılmaz ya da alt kısmı bozuk çıkar — kaynağa dönüp satırın tamamını seçtiğinizden emin olun.

İkinci neden biçim karışıklığıdır: JWT ve bazı API'ler + yerine tire, / yerine alt çizgi kullanan Base64URL üretir; bu araç iki alfabeyi de tanır ve eksik = dolgusunu kendisi tamamlar. Üçüncü neden ise verinin aslında görsel olmamasıdır: bir PDF'in veya metnin Base64 kodu geçerli çözülür ama görsel imzası taşımadığı için araç desteklenen biçimleri sayan bir uyarı gösterir.

Uzantı nereden biliniyor? Dosya imzası

Data URI'nin başındaki image/png gibi etiket bir beyandır ve yanlış yazılmış olabilir. Bu araç etikete güvenmek yerine çözülen verinin ilk baytlarına bakar: PNG dosyası her zaman aynı sekiz baytla, JPG FF D8 FF ile, GIF ise GIF8 harfleriyle başlar.

Uzantı bu imzadan seçilir; etiket JPG dese bile veri PNG imzası taşıyorsa dosya .png olarak iner. Böylece yanlış etiketli bir data URI, yanlış uzantılı ve bazı programlarda açılmayan bir dosyaya dönüşmez. PNG, JPG, GIF, WEBP, BMP, ICO, AVIF ve SVG tanınır.

Sık sorulanlar

Data URI'nin tamamını mı yapıştırmalıyım?

İkisi de olur: data:image/png;base64,… ile başlayan satırın tamamını da, virgülden sonraki çıplak kodu da yapıştırabilirsiniz. CSS url() sarmalayıcısı, tırnaklar ve satır sonları kendiliğinden temizlenir.

Hangi görsel biçimleri tanınır?

PNG, JPG, GIF, WEBP, BMP, ICO, AVIF ve SVG. Tür, kodun başındaki etikete değil çözülen verinin dosya imzasına bakılarak belirlenir; imza tanınmıyorsa hangi biçimlerin desteklendiğini söyleyen bir uyarı görürsünüz.

Yapıştırdığım veri sunucuya gidiyor mu?

Hayır. Çözme tamamen tarayıcınızın içinde yapılır; kod da, çözülen görsel de hiçbir sunucuya gönderilmez. Bu yüzden şirket içi bir sistemden kopyaladığınız veriyle de güvenle kullanılır.

Base64 kodum neden hata veriyor?

En sık neden kodun eksik kopyalanmasıdır; uzun satırın tamamını seçtiğinizden emin olun. Kod Base64URL alfabesindeyse (tire ve alt çizgi içeriyorsa) sorun değil, araç onu da çözer. Veri görsel değilse kod geçerli olsa bile biçim uyarısı alırsınız.