Cách sử dụng
- Chọn Image → Base64 rồi chọn tệp hình ảnh, hoặc chọn Base64 → Image để thực hiện theo chiều ngược lại.
- Chọn định dạng đầu ra cần dùng: data URL, Base64 thuần, thẻ img trong HTML, quy tắc background-image trong CSS hoặc Markdown.
- Sao chép kết quả rồi dán vào mã, mẫu email hoặc JSON.
- Để giải mã, hãy dán data URL hoặc Base64 thuần; ảnh sẽ được xem trước và có thể tải xuống.
Cách hoạt động
Base64 biểu diễn dữ liệu nhị phân bằng 64 ký tự có thể in được, nhờ đó hình ảnh có thể được nhúng trực tiếp trong các định dạng văn bản. Data URL thêm loại phương tiện vào phía trước, ví dụ data:image/png;base64, rồi đến các byte đã mã hóa. Trình duyệt chấp nhận data URL ở bất kỳ nơi nào có thể dùng URL hình ảnh: thuộc tính src của thẻ img, url() trong CSS hoặc tham chiếu hình ảnh trong SVG.
Văn bản sau khi mã hóa luôn lớn hơn tệp gốc khoảng một phần ba (4 ký tự cho mỗi 3 byte). Nhúng các biểu tượng nhỏ và ảnh giữ chỗ có thể giúp tiết kiệm một yêu cầu mạng riêng, nhưng dữ liệu được nhúng không thể lưu vào bộ nhớ đệm riêng và sẽ được tải xuống lại mỗi khi tải trang hoặc stylesheet chứa dữ liệu đó. Vì vậy, cách này hiếm khi có lợi nếu kích thước vượt quá vài kilobyte. Nhiều ứng dụng email chặn hoặc xóa hình ảnh dùng data URL, nên hãy kiểm tra trước khi dùng trong bản tin.
Tệp được mã hóa theo từng byte: không có dữ liệu nào được nén lại và siêu dữ liệu bên trong tệp (chẳng hạn như EXIF) vẫn được giữ nguyên. Khi giải mã, công cụ chấp nhận data URL đầy đủ, Base64 thuần, Base64 an toàn cho URL và văn bản được sao chép kèm lớp bọc CSS url(…). Loại hình ảnh được xác định từ các byte đã giải mã thay vì dựa vào nhãn.
Ví dụ
Biểu tượng nhỏ trong stylesheet
Biểu tượng PNG 600 byte sẽ thành chuỗi Base64 dài 800 ký tự. Chọn đầu ra CSS để nhận quy tắc background-image có thể dán vào một class mà không cần lưu trữ tệp riêng.
Hình ảnh từ phản hồi API
API trả về một trường JSON như "iVBORw0KGgoAAAANSUhEUg…". Dán nội dung đó vào Base64 → Image để xem ảnh, kiểm tra kích thước và tải xuống dưới dạng PNG.
Logo SVG trong HTML
Mã hóa SVG sẽ tạo ra URL data:image/svg+xml;base64 dùng được trong thẻ img. Với SVG, mã SVG chưa nén thường ngắn hơn Base64, vì vậy hãy cân nhắc nhúng trực tiếp SVG.
Câu hỏi thường gặp
Vì sao phiên bản Base64 lớn hơn ảnh của tôi?
Base64 dùng 4 ký tự văn bản để lưu 3 byte, làm kích thước tăng khoảng 33%, chưa kể một phần nhỏ cho tiền tố data URL. Nén Gzip hoặc Brotli trên máy chủ web giúp giảm chênh lệch nhưng không loại bỏ hoàn toàn.
Mã hóa có làm thay đổi hoặc nén ảnh không?
Không. Các byte chính xác của tệp được mã hóa, bao gồm cả siêu dữ liệu. Để rút ngắn chuỗi, hãy nén hoặc đổi kích thước ảnh trước.
Data URL khác Base64 thuần như thế nào?
Base64 thuần chỉ gồm các byte đã mã hóa. Data URL thêm tiền tố như data:image/jpeg;base64, để cho trình duyệt biết loại tệp, nhờ đó có thể dùng trực tiếp làm nguồn ảnh.
Có giới hạn kích thước không?
Bạn có thể mã hóa tệp tối đa 10 MB tại đây. Chuỗi quá dài có thể khiến các trường văn bản và trình soạn thảo chạy chậm; data URL lớn như vậy cũng không thực tế khi dùng trên website.
Quyền riêng tư
Việc mã hóa và giải mã diễn ra trong trình duyệt của bạn. Hình ảnh và văn bản Base64 không được tải lên, lưu trữ hoặc đưa vào dữ liệu phân tích.