Cara menggunakan
- Tempel teks Base64 atau URI data:image/jpeg;base64 ke kotak masukan.
- Pastikan pratinjau, format yang terdeteksi, dan dimensi gambar sudah sesuai.
- JPG sudah terpilih. Geser penggeser Kualitas: nilai lebih tinggi mempertahankan lebih banyak detail, nilai lebih rendah menghasilkan file yang lebih kecil.
- Unduh file .jpg. Untuk mempertahankan JPEG yang sudah ada persis seperti aslinya, pilih File asli.
Seperti apa JPEG dalam Base64
Setiap file JPEG diawali dengan byte FF D8 FF, sehingga Base64-nya selalu dimulai dengan /9j/. Karakter berikutnya memberi petunjuk tentang asal file: /9j/4AAQSkZJRg adalah gambar JFIF biasa, sedangkan /9j/4Q biasanya menandakan header Exif yang ditulis oleh kamera atau ponsel. Anda akan menemukan JPEG Base64 pada unggahan aplikasi seluler, pengiriman formulir, ekspor CMS, lampiran email, dan kolom foto di REST API.
JPG dan JPEG adalah format yang sama; ekstensi yang lebih pendek berasal dari era MS-DOS, ketika ekstensi file dibatasi tiga karakter. Tipe MIME yang benar adalah image/jpeg. Alat ini membaca byte-nya secara langsung, sehingga data URI berlabel image/jpg atau image/png tetap didekode dengan benar.
Kualitas, transparansi, dan metadata
JPEG bersifat lossy, dan setiap enkode baru membuang sedikit lebih banyak detail. Jika masukan sudah berupa JPEG dan Anda hanya memerlukan filenya, pilih File asli agar file disimpan tanpa kompresi putaran kedua. Gunakan opsi JPG jika Anda ingin mengonversi PNG, WebP, atau format lain, atau untuk memperkecil foto berukuran besar. Kualitas sekitar 80 hingga 90 persen adalah titik keseimbangan yang umum antara ukuran dan ketajaman.
- Transparansi. JPEG tidak memiliki kanal alfa, sehingga area transparan diisi dengan warna putih. Pertahankan transparansi dengan PNG atau WebP.
- Metadata. Konversi hanya menggambar ulang piksel, sehingga data Exif seperti model kamera atau lokasi GPS tidak ikut terbawa. File asli mempertahankan file beserta metadatanya.
Mendekode JPEG Base64 di Node.js
const fs = require('fs');
// hapus awalan data URI jika ada
const b64 = input.replace(/^data:[^,]+,/, '');
fs.writeFileSync('photo.jpg', Buffer.from(b64, 'base64'));
Untuk arah sebaliknya, JPG ke Base64 mengubah foto menjadi string atau data URI.
Pertanyaan yang sering diajukan
Apakah JPG sama dengan JPEG?
image/jpeg. Silakan ganti nama file jika suatu program mengharapkan salah satunya.Mengapa latar belakang transparan berubah menjadi putih?
JPEG tidak dapat menyimpan transparansi, sehingga konverter mengisi piksel transparan dengan warna putih sebelum mengenkode. Pilih PNG atau WebP untuk mempertahankan latar belakang transparan.
Bagaimana cara menghindari penurunan kualitas?
Jika data Base64 sudah berupa JPEG, unduh sebagai File asli untuk mendapatkan byte yang persis sama. Mengenkode ulang sebagai JPG, bahkan dengan kualitas tinggi, selalu menambah sedikit kehilangan.
Apakah foto tetap menyimpan data Exif-nya?
Hanya dengan File asli. JPG hasil konversi hanya berisi piksel, yang sekaligus menjadi cara mudah untuk menghapus data lokasi sebelum membagikan foto.