Công cụ chuyển RGB sang Hex là gì?
Công cụ này chuyển một màu được biểu diễn theo mô hình RGB — gồm ba kênh Đỏ (Red), Lục (Green) và Lam (Blue), mỗi kênh có giá trị từ 0 đến 255 — sang mã màu thập lục phân (hex) dạng #RRGGBB. Mã hex là cách phổ biến để khai báo màu trong HTML, CSS, các phần mềm thiết kế và hầu hết công cụ kỹ thuật số, nên việc đổi giá trị RGB sang hex là thao tác quen thuộc hằng ngày của lập trình viên web và nhà thiết kế.
Cách sử dụng
Nhập ba giá trị Đỏ, Lục và Lam, mỗi giá trị từ 0 đến 255. Nhấn nút tính toán, công cụ sẽ trả về mã hex tương ứng kèm một ô màu xem trước trực tiếp để bạn kiểm tra kết quả bằng mắt. Nếu nhập giá trị nằm ngoài khoảng 0–255, hệ thống sẽ tự động điều chỉnh về phạm vi hợp lệ.
Giải thích công thức
Mỗi kênh là một số nguyên từ 0 đến 255 — đúng bằng phạm vi mà một byte có thể lưu trữ (từ 00 đến FF trong hệ thập lục phân). Công cụ định dạng mỗi kênh thành một số hex hai chữ số, viết hoa và thêm số 0 ở đầu nếu cần, rồi ghép lại:
$$\text{Hex} = \text{\#} \; \texttt{[}\text{Red}\texttt{]}_{16} \, \texttt{[}\text{Green}\texttt{]}_{16} \, \texttt{[}\text{Blue}\texttt{]}_{16}$$Ví dụ, giá trị 255 trở thành FF, còn 0 trở thành 00. Về mặt toán học, một giá trị kênh \(v\) được tách thành chữ số hàng cao \(\lfloor v/16 \rfloor\) và chữ số hàng thấp \((v \bmod 16)\).
Ví dụ minh họa
Lấy màu đỏ "tomato": R = 255, G = 99, B = 71. 255 trong hệ hex là FF. \(99 = 6 \times 16 + 3 = 63\). \(71 = 4 \times 16 + 7 = 47\). Ghép lại ta được #FF6347 — chính là màu "tomato" chuẩn trong CSS.
Câu hỏi thường gặp
Mỗi cặp hex có ý nghĩa gì? Cặp đầu tiên là màu đỏ, cặp thứ hai là lục, cặp thứ ba là lam — mỗi cặp chạy từ 00 (không có) đến FF (tối đa).
Vì sao lại viết hoa? Mã hex không phân biệt chữ hoa hay chữ thường; viết hoa chỉ là quy ước phổ biến, còn #ff6347 vẫn hoàn toàn hợp lệ.
Có nhập được số thập phân không? Không — các kênh RGB là số nguyên từ 0 đến 255. Giá trị lẻ sẽ được làm tròn xuống.