Dành cho ảnh chụp
Chuyển Base64 sang JPG
Biến chuỗi Base64 trở lại thành ảnh JPG. Dữ liệu JPEG được lưu đúng như lúc mã hóa, còn đầu vào PNG hoặc WebP có thể chuyển sang JPG ngay trong trình duyệt.
Ảnh của bạn sẽ hiện ở đây
Không có gì được tải lên. Việc giải mã diễn ra ngay trên thiết bị này.
- Định dạng
- —
- Kích thước
- —
- Dung lượng
- —
- Độ dài Base64
- —
- Riêng tư ngay từ thiết kế
- Nhận diện định dạng thực sự
- Không giới hạn, không cần tài khoản
Cách chuyển Base64 sang ảnh
Dán chuỗi vào
Dán Base64 thô hoặc một URL
data:image/...;base64,đầy đủ. Dấu ngoặc kép, ký tự xuống dòng và phần bọc CSSurl()được tự động loại bỏ.Xem kết quả giải mã
Định dạng được đọc từ chữ ký tệp chứ không phải đoán, và ảnh hiển thị ngay kèm kích thước và dung lượng.
Lưu ảnh
Tải tệp gốc về, chuyển sang PNG, JPG hoặc WebP, hoặc sao chép thẳng vào clipboard.
Về ảnh JPG Base64
JPEG (còn viết là JPG) dùng kiểu nén có mất dữ liệu, tối ưu cho ảnh chụp, nên cho ra tệp nhỏ với những ảnh có dải màu chuyển mượt. Định dạng này không hỗ trợ nền trong suốt.
Ảnh JPEG Base64 bắt đầu bằng /9j/, là dạng mã hóa của các byte FF D8 FF nằm ở đầu mọi tệp JPEG. JPG và JPEG là cùng một định dạng, có chung media type image/jpeg.
Thiết kế theo cách lập trình viên làm việc
Riêng tư ngay từ thiết kế
Việc giải mã chạy bằng JavaScript trên thiết bị của bạn. Chuỗi không bao giờ được gửi lên máy chủ, nên token, ảnh chụp màn hình và dữ liệu khách hàng vẫn nằm trong tay bạn.
Nhận diện định dạng thực sự
Magic bytes giúp nhận ra PNG, JPEG, GIF, WebP, SVG, BMP, ICO và AVIF ngay cả khi tiền tố data URL bị thiếu hoặc sai.
Dễ tính với đầu vào
Xử lý được Base64 URL-safe, thiếu padding
=, chuỗi bị ngắt dòng, chuỗi đã escape trong JSON và dấu ngoặc kép bao quanh.Thông tin tệp chính xác
Hiển thị kích thước theo pixel, dung lượng tệp sau giải mã và độ dài chuỗi, rất tiện khi kiểm tra payload API.
Chuyển đổi định dạng
Chuyển bất kỳ ảnh nào đã giải mã sang PNG, JPG hoặc WebP mà không cần rời trang.
Không giới hạn, không cần tài khoản
Dùng miễn phí, không đăng ký, không watermark và không giới hạn lượt dùng mỗi ngày.
Ảnh Base64 là gì?
Base64 là cách biểu diễn dữ liệu nhị phân bằng 64 ký tự in được: A–Z, a–z, 0–9, + và /. Chuẩn này được định nghĩa trong RFC 4648. Cứ 3 byte của tệp sẽ thành 4 ký tự văn bản, nên ảnh Base64 lớn hơn tệp gốc khoảng 33%.
Data URL, được định nghĩa trong RFC 2397, bọc đoạn văn bản đó cùng một media type để trình duyệt hiển thị trực tiếp: data:image/png;base64,iVBORw0KGgo.... Đây là cách các ảnh nhỏ được nhúng vào HTML, CSS, phản hồi API dạng JSON, email và tệp SVG.
Chuyển Base64 sang ảnh là làm ngược lại quá trình đó. Văn bản được giải mã về đúng các byte ban đầu và lưu thành một tệp ảnh bình thường, giống hệt tệp đã được mã hóa.
Các định dạng ảnh và chữ ký Base64 tương ứng
Những ký tự đầu tiên của chuỗi Base64 cho biết định dạng ảnh, vì mỗi định dạng đều bắt đầu bằng các byte chữ ký cố định.
| Định dạng | Kiểu MIME | Base64 bắt đầu bằng | Trong suốt | Ảnh động | Phù hợp nhất cho |
|---|---|---|---|---|---|
| PNG | image/png | iVBORw0KGgo | Có | Không | Logo, icon, ảnh chụp màn hình |
| JPG | image/jpeg | /9j/ | Không | Không | Ảnh chụp |
| GIF | image/gif | R0lGOD | Có | Có | Ảnh động ngắn, đơn giản |
| WebP | image/webp | UklGR | Có | Có | Ảnh web dung lượng nhỏ hơn |
| SVG | image/svg+xml | PHN2Zy | Có | Có | Icon và hình minh họa co giãn được |
| BMP | image/bmp | Qk | Không | Không | Ảnh bitmap cũ, không nén |
| ICO | image/x-icon | AAABAA | Có | Không | Favicon |
Giải mã Base64 sang JPG bằng code
Khi cần làm điều tương tự trong script, các đoạn code dưới đây ghi một chuỗi Base64 ra tệp ảnh.
const img = new Image();
img.src = `data:image/jpeg;base64,${b64}`;
document.body.append(img);import { writeFileSync } from 'node:fs';
writeFileSync('image.jpg', Buffer.from(b64, 'base64'));import base64
with open("image.jpg", "wb") as f:
f.write(base64.b64decode(b64))base64 --decode image.txt > image.jpgCâu hỏi thường gặp
JPG và JPEG có khác nhau không?
Không. Đó là hai cách viết của cùng một định dạng. Phần mở rộng ba chữ cái .jpg có từ các hệ thống Windows đời cũ; media type luôn là image/jpeg.
Giải mã Base64 có làm giảm chất lượng JPG không?
Không. Giải mã khôi phục đúng từng byte của tệp gốc, nên không có nén lại và không mất chất lượng.
Có chuyển được Base64 PNG sang JPG không?
Có. Dán dữ liệu PNG rồi bấm Tải JPG. Các vùng trong suốt sẽ được tô trắng, vì JPEG không có kênh alpha.
Làm sao nhận biết một chuỗi Base64 là JPEG?
Chuỗi bắt đầu bằng /9j/. Ở dạng data URL, nó trông như data:image/jpeg;base64,/9j/4AAQ....
Dữ liệu Base64 của tôi có bị tải lên máy chủ không?
Không. Việc giải mã do JavaScript thực hiện ngay trong trình duyệt của bạn. Chuỗi và ảnh kết quả không bao giờ được truyền đi, nên công cụ an toàn với ảnh riêng tư hoặc nhạy cảm.
Công cụ hỗ trợ những định dạng ảnh nào?
PNG, JPEG, GIF, WebP, SVG, BMP, ICO và AVIF. Định dạng được nhận diện từ chữ ký tệp, nên vẫn hoạt động dù không có tiền tố data:image/....