Base64 Kodlama ve Görsellerde Kullanımı
Base64 kodlama, ikili (binary) görsel verilerini yalnızca okunabilir karakterlerden oluşan bir metin biçimine dönüştürme işlemidir. Bu yöntem, görsel dosyalarının ham baytlarını ASCII karakter kümesindeki güvenli karakterlere eşler. Web tarayıcıları ve sunucular, bu metin dizisini okuyarak orijinal görseli yeniden oluşturabilir.
Görselleri Base64 biçimine dönüştürmenin temel amacı, görsel verilerini doğrudan web kodunun (HTML veya CSS) içine gömmektir. Bu işleme "satır içi" (inline) yerleştirme denir. Normal şartlarda bir web sayfası yüklenirken, sayfadaki her bir görsel için sunucuya ayrı bir HTTP isteği gönderilir. Küçük simgeler, logolar veya e-posta şablonlarındaki görseller Base64 formatına dönüştürülüp doğrudan koda eklendiğinde, bu ek HTTP isteklerine gerek kalmaz. Ancak Base64 kodlaması, veri boyutunu orijinal görsel dosyasına kıyasla yaklaşık üçte bir oranında (yaklaşık %33) artırır. Bu nedenle, büyük görsellerin Base64 ile kodlanması sayfa boyutunu aşırı büyüteceği ve tarayıcı önbellekleme avantajlarını ortadan kaldıracağı için önerilmez.
Desteklenen Görsel Biçimleri ve Sınırlar
Base64 Görsel Dönüştürücü, hem kodlama (Görsel → Base64) hem de kod çözme (Base64 → Görsel) işlemlerini belirli kurallar ve dosya boyutu sınırları çerçevesinde gerçekleştirir.
Kodlama Sınırları ve Kuralları (Görsel → Base64)
- Maksimum Dosya Boyutu: Kodlama işlemi için yüklenebilecek en büyük görsel boyutu 5 MB'tır.
- Çoklu Dosya Yükleme: Sürükle-bırak alanına birden fazla görsel bırakılması durumunda, araç yalnızca ilk görseli işleme alır ve diğerlerini yoksayar.
- Desteklenen Biçimler: PNG, JPG, GIF, WebP, SVG, AVIF, BMP, ICO ve TIFF formatındaki görseller desteklenmektedir.
Kod Çözme Sınırları ve Kuralları (Base64 → Görsel)
- Maksimum Girdi Uzunluğu: Yapıştırılabilecek en uzun Base64 veya veri URI dizesi 8 MB ile sınırlıdır.
- Girdi Esnekliği: Araç, standart Base64 dizilerinin yanı sıra URL-uyumlu (URL-safe) Base64 dizilerini de kabul eder. Metin içerisindeki boşluklar ve yeni satır karakterleri işleme engel olmaz.
- Tür Algılama: Kod çözme işlemi sırasında araç, Base64 dizesinin hangi görsel biçimine ait olduğunu otomatik olarak tespit eder.
Bu araç yalnızca görselin orijinal baytlarını kodlar veya geri yükler; görseller üzerinde sıkıştırma, kırpma, yeniden boyutlandırma veya PNG/JPG gibi belirli formatlara dönüştürme işlemleri yapmaz.
Veri URI'leri ve Web Geliştirmede Kullanımı
Veri URI'si, bir görselin türünü ve Base64 kodlu verisini tek bir metin dizesi içinde birleştiren bir şemadır. Web geliştiricileri bu dizileri doğrudan HTML ve CSS dosyalarında kullanabilirler. Dönüştürücü, kodlanan görseli dört farklı biçimde çıktı olarak sunar:
- Veri URI'si:
data:image/...protokolü ile başlayan ve doğrudan HTML veya CSS içinde kullanılmaya hazır olan metin dizesidir. - Base64: Görselin herhangi bir protokol ön eki içermeyen ham Base64 dizesidir.
- CSS: Görselin bir CSS
background-imageözelliği (arka plan görseli) olarak biçimlendirilmiş halidir. - HTML: Görselin doğrudan bir HTML
<img>etiketi (kaynak niteliği) şeklinde biçimlendirilmiş halidir.
Tarayıcı Tabanlı İşlem ve Gizlilik
Bu araçla gerçekleştirilen tüm dönüştürme işlemleri doğrudan kullanıcının web tarayıcısında gerçekleşir. Görsel dosyalarınız veya yapıştırdığınız Base64 metinleri hiçbir şekilde uzak sunuculara yüklenmez ve dışarıya aktarılmaz. Tüm okuma, kodlama ve kod çözme süreçleri yerel olarak tarayıcı belleğinde tamamlanır.
Hata Mesajları ve Çözümleri
İşlem sırasında karşılaşılabilecek olası hatalar ve aracın gösterdiği hata mesajları şu şekildedir:
- "Bu dosya desteklenen bir görsel biçimi değil." - Yüklenen dosya PNG, JPG, GIF, WebP, SVG, AVIF, BMP, ICO veya TIFF formatlarından biri olmadığında gösterilir.
- "Bu görsel
{max}boyutundan büyük. Lütfen daha küçük bir görsel deneyin." - Yüklenen görsel dosyasının boyutu 5 MB sınırını aştığında bu uyarı verilir. - "Dosya okunamadı." - Tarayıcı, yüklenen görsel dosyasını teknik bir sorun nedeniyle okuyamadığında ortaya çıkar.
- "Bu geçerli bir Base64 kodu değil." - Kod çözme alanına yapıştırılan metin standart Base64 karakter yapısına uygun olmadığında gösterilir.
- "Bu Base64 kodu tanınabilir bir görsele çözümlenemiyor." - Base64 dizesinin kodu çözülmesine rağmen elde edilen veriler geçerli bir görsel yapısı oluşturmadığında bu hata alınır.
- "Bu girdi çok uzun. Lütfen
{max}karakterin altında tutun." - Kod çözme alanına yapıştırılan metnin boyutu 8 MB sınırını geçtiğinde gösterilir. - "Görsel verisinin kodu çözüldü ancak görüntülenemedi." - Base64 verisi başarıyla çözümlendiği halde tarayıcı görseli ekranda önizleme olarak oluşturamadığında bu hata mesajı belirir.
Sıkça Sorulan Sorular
Base64 veri URI (data URI) görseli nedir?
Metin olarak kodlanmış bir görseldir; böylece ayrı bir dosyadan yüklenmek yerine doğrudan HTML veya CSS içinde yer alabilir. Bu, ek bir istek tasarrufu sağlar ve küçük simgeler ile e-posta şablonları için oldukça kullanışlıdır.
Büyük görselleri bu şekilde satır içi (inline) yapmalı mıyım?
Büyük görseller için önermeyiz. Base64, veri boyutunu yaklaşık üçte bir oranında artırır ve sayfadan bağımsız olarak önbelleğe alınamaz. Bu nedenle küçük varlıklarla sınırlı tutmalı ve büyük görselleri normal dosyalar olarak bağlamalısınız.
Bir Base64 dizesini tekrar dosyaya dönüştürebilir mi?
Evet. Base64 → Görsel sekmesine geçip bir veri URI'si veya ham Base64 dizesi yapıştırdığınızda, araç görsel türünü algılar, önizlemesini gösterir ve dosyayı indirmenize olanak tanır. İndirilen dosyalar brobrogo-gorsel dosya adı ve uygun uzantıyla kaydedilir.