Enkode

Data URI / Gambar Base64

Encode gambar menjadi Data URI (data:image/…;base64,…) untuk disisipkan ke CSS/HTML, dan decode Data URI atau Base64 mentah kembali menjadi file — semuanya langsung di browser.

Pratinjau gambar akan muncul di sini.

A Data URI embeds a file's contents (usually an image) directly into HTML or CSS as a Base64 string, instead of linking to a separate file. This removes an extra network request at the cost of a larger document.

How to use it

Common uses

Things to keep in mind

Base64 encoding grows the data by about 33% — for large images, a Data URI is usually a worse choice than a separate file with browser caching.

A Data URI isn't cached separately from the document it's embedded in — it gets re-downloaded along with the page every time.

Artikel tentang alat ini: Data URI: kapan menyematkan gambar langsung ke dalam kode

Pertanyaan yang sering diajukan

Kapan sebaiknya memakai Data URI untuk gambar?

Data URI berguna untuk gambar kecil (misalnya ikon) yang ingin disisipkan langsung ke CSS atau HTML tanpa file terpisah, sehingga mengurangi jumlah request HTTP. Untuk gambar besar sebaiknya tetap pakai file gambar biasa.

Apa kelemahan memakai Data URI dibanding file gambar biasa?

Data URI membuat ukuran HTML/CSS membengkak sekitar 33% dibanding file aslinya karena encoding Base64, tidak di-cache terpisah oleh browser seperti file gambar biasa, dan punya batas ukuran praktis di beberapa browser serta klien email.

Apakah gambar yang saya unggah dikirim ke server?

Tidak. Proses encode ke Data URI dan decode kembali ke file berjalan sepenuhnya di browser Anda, gambar tidak pernah diunggah ke server.

Bisakah Data URI dipakai untuk SVG tanpa Base64?

Bisa. SVG adalah teks (XML), sehingga alih-alih Base64, cukup percent-encoding karakter khususnya: data:image/svg+xml,%3Csvg...%3E. Cara ini lebih ringkas dan tetap dapat diedit langsung di berkas CSS.

Bisakah Data URI disisipkan ke atribut href atau background-image?

Bisa, Data URI berfungsi di mana pun referensi ke sumber daya diharapkan — di src, href, background-image dalam CSS, bahkan di @import. Sintaks dan batasan ukurannya sama seperti pada tag img.

Artikel: Enkode

Base64: untuk apa enkode dan bagaimana cara kerjanya

Bagaimana Base64 mengubah data biner menjadi teks ASCII dan kapan ini benar-benar diperlukan.

Base32: bedanya dengan Base64 dan kapan lebih praktis

Alfabet Base32 yang tidak membedakan huruf besar/kecil, dan kasus di mana ia lebih praktis daripada Base64.

URL Encode/Decode: percent-encoding dalam tautan

Bagaimana karakter khusus dalam alamat dan parameter berubah menjadi urutan %XX.

HTML Entities: cara menampilkan karakter khusus dengan aman

Mengapa karakter < > & perlu di-escape dan bagaimana ini mencegah markup rusak.

JWT: struktur token dan arti "mendekode" JWT

Header, payload, dan signature dari JWT, serta mengapa mendekode bukan hal yang sama dengan memverifikasi tanda tangan.

Unicode Escape: arti urutan \uXXXX

Dari mana asal urutan seperti \u0041 dalam JSON dan string JS, serta artinya.

ROT13 dan sandi Caesar: substitusi karakter sederhana

Mengapa pergeseran 13 huruf membuat ROT13 mengoreksi dirinya sendiri, dan mengapa masih digunakan sekarang.

Punycode: bagaimana domain internasional bekerja di DNS

Bagaimana domain dengan karakter non-Latin menjadi bentuk ASCII dengan awalan xn--.

Kode Morse: bagaimana teks berubah menjadi titik dan garis

Prinsip pengenkodean huruf menjadi titik dan garis, serta di mana kode Morse masih digunakan sekarang.

Gzip + Base64: mengompresi data untuk dikirim sebagai teks

Mengapa data biner terkompresi juga dienkode Base64 sebelum dimasukkan ke bidang teks.

XML Entities: meng-escape karakter dalam dokumen XML

Lima entity XML wajib, tanpanya dokumen rusak saat diuraikan.