onlinetools.dev

Chuyển đổi định dạng ảnh

Chuyển ảnh giữa PNG, JPEG và WebP với thanh chỉnh chất lượng

Chạy cục bộ
loading…
Về công cụ này

Chuyển đổi ảnh giữa PNG, JPEG và WebP mà không phải cài gì và cũng chẳng tải lên đâu cả: thả tệp vào, chọn định dạng đích, chỉnh chất lượng bằng thanh trượt trực tiếp, rồi xem kích thước đầu ra cập nhật theo thời gian thực. Ô Δ cho biết chính xác tệp sau khi chuyển nhỏ đi (hay lớn thêm) bao nhiêu, nên việc chọn mức chất lượng thôi không còn là đoán mò.

Ba định dạng có ba nhiệm vụ khác nhau. PNG là nén không mất dữ liệu và hỗ trợ trong suốt đầy đủ — hợp cho ảnh chụp màn hình, tài nguyên giao diện và mọi thứ có cạnh sắc hay chữ. JPEG nén ảnh chụp rất mạnh tay nhưng không có kênh alpha và làm nhòe cạnh sắc. WebP thường thắng JPEG 25–35% ở mức chất lượng tương đương, hỗ trợ trong suốt, và chạy được trên mọi trình duyệt hiện hành — với web thì nó thường là đáp án.

Việc chuyển đổi diễn ra trên một canvas trong trình duyệt của bạn: ảnh được giải mã, vẽ lại rồi mã hóa lại bằng chính các codec mà trình duyệt dùng để hiển thị trang. Đó là điều làm công cụ này riêng tư — và cũng là lý do số byte chính xác chênh nhau chút ít giữa Chrome, Firefox và Safari, vì mỗi bên dùng bộ mã hóa riêng.

Câu hỏi thường gặp

Nên đặt mức chất lượng nào cho JPEG và WebP?
Khoảng 75 đến 90 bao trùm gần như mọi nhu cầu thực tế. Ở mức 85, phần lớn ảnh chụp nhìn không khác gì bản gốc mà dung lượng chỉ còn một phần nhỏ; dưới khoảng 70, các mảng chuyển sắc và tông da bắt đầu nổi khối; trên 90 thì dung lượng leo dốc để đổi lấy phần cải thiện mà mắt bạn không thấy. Cứ kéo thanh trượt và nhìn ô kích thước — điểm ngọt thường lộ ra rất rõ.
Vì sao tệp PNG của tôi lại to ra sau khi chuyển sang JPEG?
JPEG sinh ra cho những mảng chuyển sắc kiểu ảnh chụp, không phải cho màu phẳng. Ảnh chụp màn hình, sơ đồ và hình giao diện nén cực tốt dưới dạng PNG (những dải pixel giống hệt nhau kéo dài) nhưng lại buộc JPEG phải lưu nhiễu quanh mỗi cạnh sắc — tệp to hơn và viền gợn thấy rõ. Hãy giữ ảnh đồ họa ở PNG hoặc chuyển sang WebP thiên về không mất dữ liệu.
Phần trong suốt sẽ ra sao khi tôi chuyển sang JPEG?
JPEG không có kênh alpha, nên các vùng trong suốt buộc phải được lấp bằng thứ gì đó — công cụ này làm phẳng chúng trên nền trắng, đúng thông lệ của ảnh dùng cho web. Nếu bạn cần giữ độ trong suốt, hãy chọn PNG hoặc WebP làm định dạng đích.
Vì sao trình duyệt của tôi không xuất được AVIF hay HEIC ở đây?
API canvas toBlob chỉ mã hóa những định dạng mà trình duyệt có sẵn bộ mã hóa — PNG và JPEG thì ở đâu cũng có, WebP thì trên Chromium và Firefox. Việc mã hóa AVIF vẫn còn hiếm, còn HEIC thì vướng bằng sáng chế, nên trình duyệt giải mã được nhưng không tạo ra được. Nếu bạn chọn định dạng mà trình duyệt không ghi được, công cụ sẽ nói thẳng thay vì lặng lẽ đưa bạn một tệp PNG.
Công cụ liên quan