Görseli Base64 Yapma
Resimlerini doğrudan kod içine gömebileceğin Base64 data URI formatına çevir.
Bir Base64 data URI formatı, görseli harici bir dosyaya bağlamak yerine doğrudan HTML, CSS veya JSON içine gömmene olanak tanır. Görsel böylece ayrı bir indirme işlemi olmaktan çıkar ve metnin bir parçası haline gelir.
Görselleri Base64 formatına gömmek ne zaman mantıklıdır?
Bir sayfadaki her görsel ekstra bir HTTP isteği demektir. Küçük bir simge, 1 px boyutunda bir gradyan veya e-posta imzasındaki ufak bir logo gibi minik ögeler için bu istek, dosyanın kendi boyutundan daha maliyetli olabilir. Görseli satır içine gömmek bu ek turu tamamen ortadan kaldırır ve görselin sayfa işaretlemesiyle tam aynı anda görünmesini sağlar.
Ancak Base64 veriyi yaklaşık üçte bir oranında şişirir ve satır içine gömülen görseller tarayıcı tarafından ayrı olarak önbelleğe alınamaz. Bu nedenle bu yöntem genel bir strateji değil, yalnızca küçük varlıklar için geçerli bir tekniktir. Yaklaşık 5 KB üzerindeki her şey neredeyse her zaman normal bir dosya olarak sunulduğunda daha verimlidir.
Görseli Base64 formatına dönüştürme adımları
- Dönüştürmek istediğin görsel dosyasını yukarıdan seç.
- Dönüştürme butonuna tıkla ve işlemin tamamlanmasını bekle.
data:image/png;base64,gibi bir ifadeyle başlayan çıktıyı kopyala.- Kopyaladığın veriyi CSS dosyadaki
url()içine, bir HTMLsrcniteliğine veya JSON alanına yapıştır. - Değişiklikleri yayına almadan önce görselin düzgün görüntülendiğini kontrol et.
Base64 görsel çıktısının kullanım alanları
- CSS arka planları — Oluşan data URI metnini doğrudan
background-image: url(...)içine yapıştırabilirsin. - Satır içi HTML görselleri — Harici bir dosya yolu vermeden bir
<img>etiketininsrckısmında kullanabilirsin. - E-posta şablonları — Bazı istemciler dış bağlantılı resimleri engellerken satır içi eklenenleri görüntüleyebilir.
- JSON ve API verileri — İkili dosya verisinin doğrudan kabul edilmediği JSON gövdelerinde görsel iletmek için kullanabilirsin.
- Tek dosyalık belgeler — Dışa bağımlılığı olmayan, kendi kendine yeten bağımsız HTML sayfaları oluşturabilirsin.
Base64 görsel kullanımında dikkat edilecek kurallar
- Dosya boyutunu yaklaşık 5 KB altında tut; bu sınır aşıldığında standart görsel dosyası kullanmak daha avantajlıdır.
- Aynı görseli yirmi farklı yerde satır içi gömme; tarayıcı bu verileri tekilleştiremez ve gereksiz bellek harcar.
- Sayfa ağırlığını hesaplarken %33 boyut artışı cezasını daima hesaba kat.
- Simgeler için PNG yerine SVG tercih etmeyi değerlendir; SVG çoğu zaman Base64 çıktısından daha küçüktür.
- Uygulamayı yeniden dağıtmadan güncel tutmak isteyebileceğin hiçbir görseli bu yöntemle gömme.
Görseli Base64 yapma hakkında sorular
Data URI nedir?
Uzak bir konumu işaret etmek yerine verinin kendisini barındıran bir adrestir. Başlangıçtaki ön ek MIME türünü ve kodlamayı belirtir, virgülden sonraki kısım ise Base64 içeriğidir.
Base64 çıktısı neden orijinal görselden daha büyük?
Base64 kodlaması her üç baytı dört karaktere dönüştürür, bu nedenle çıktı yaklaşık %33 oranında büyür. Bu fazlalık, ikili veriyi düz metin olarak temsil etmenin getirdiği doğal bir yüktür.
Görselleri Base64 yapmak sayfa açılışını yavaşlatır mı?
Küçük varlıklarda HTTP isteğini ortadan kaldırdığı için faydalıdır. Büyük varlıklarda ise önbelleklenemediği ve stil ile işaretleme dosyalarının ayrıştırılmasını geciktirdiği için performansa zarar verir.
SVG formatındaki dosyalar da Base64 yapılabilir mi?
Yapılabilir ancak SVG zaten metin tabanlı bir formattır. SVG içeriğini doğrudan eklemek veya URL kodlamasından geçirmek genelde Base64 formatına göre daha küçük bir sonuç verir.
Dönüştürülen görsel sunucuya yüklenir mi?
Evet, görselin kodlanabilmesi için sunucuya iletilir ve orada işlenir, ancak kalıcı olarak depolanmaz.