Mặc dù không mang tính cách mạng nhưng mã QR đã được tích hợp một cách tinh tế vào thói quen hàng ngày của chúng ta mà chúng ta thường không nhận ra. Chúng đặc biệt phổ biến ở các nhà hàng nơi tôi sống. Thay vì menu truyền thống, bạn thường được cung cấp mã QR. Sau khi được quét bằng điện thoại, nó sẽ đưa bạn đến trang web của nhà hàng, nơi bạn có thể xem thực đơn, các món đặc biệt hàng ngày, các món ăn theo mùa và giá cả cập nhật. Điều này giúp loại bỏ sự cần thiết phải cập nhật liên tục các menu in giấy.
Trong bài viết này, tôi đi sâu vào các khía cạnh kỹ thuật của mã QR. Tôi trình bày ngắn gọn về chúng là gì và lịch sử của chúng, nhưng trọng tâm chính sẽ là tìm hiểu ý nghĩa đằng sau những dấu chấm nhỏ đó. Chúng ta sẽ khám phá những câu hỏi như: Có định dạng cụ thể nào không? Chúng được tạo ra như thế nào? Các phần khác nhau của hình vuông có chứa thông tin khác nhau không? Có sửa lỗi gì không? Vì vậy, nếu bạn tò mò muốn tìm hiểu thêm, hãy cùng tìm hiểu.
Mã QR là gì?
Mã QR, hay mã Phản hồi nhanh, là mã vạch ma trận hai chiều được phát minh vào năm 1994 bởi một công ty Nhật Bản, Denso Wave, để dán nhãn cho các bộ phận ô tô. Không giống như mã vạch chỉ lưu trữ dữ liệu theo chiều ngang, mã QR lưu trữ dữ liệu theo chiều ngang và chiều dọc. Họ có thể lưu trữ nhiều thông tin khác nhau, bao gồm văn bản, URL, số điện thoại, địa chỉ email và thông tin mạng Wi-Fi. Tuy nhiên, cốt lõi của chúng là lưu trữ văn bản. Ví dụ: một số điện thoại được lưu dưới dạng “tel:”, theo sau là số (ví dụ: “tel:0123456789”) và thông tin Wi-Fi được lưu dưới dạng “Wi-Fi:”, theo sau là SSID và mật khẩu (ví dụ: “WIFI:S:MySSID;T:WPA;P:passw0rd”).
Các dấu chấm, hình dạng và cấu trúc của mã QR
Mã QR có nhiều kích cỡ khác nhau. Phiên bản gốc là ma trận điểm 21×21 có thể lưu trữ tối đa 17 ký tự văn bản chưa được mã hóa UTF-8 với khả năng sửa lỗi thấp. Tuy nhiên, chúng đã được nâng cấp lên tới phiên bản 40, là ma trận 177×177 và có thể lưu trữ gần 3k văn bản UTF-8.
Hãy cùng xem xét cấu trúc của mã QR để hiểu chi tiết kỹ thuật của nó. Như được phác thảo trong hình ảnh trên, mã QR có tám vùng khác nhau. Mô tả của mỗi vùng có thể được tìm thấy dưới đây.
- Pattern định vị: Đầu tiên là ô định vị (Finder pattern) bao gồm ba hình vuông 3 × 3 nằm ở trên cùng bên trái, trên cùng bên phải và dưới cùng bên trái. Những ô vuông này giúp xác định hướng của mã QR.
- Dấu phân cách: Dấu phân cách có chiều rộng một pixel đảm bảo phần định vị không lẫn với dữ liệu thực tế.
- Pattern định giờ: Khu vực này giúp phần mềm trên camera xác định kích thước của các pixel.
- Pattern căn chỉnh: Khu vực thứ tư giúp phần mềm giải mã sửa các biến dạng của hình ảnh.
- Thông tin định dạng: Vùng thứ năm được mã hóa màu xanh cung cấp thông tin về loại dữ liệu và sửa lỗi trong mã QR.
- Dữ liệu: Vùng thứ sáu của mã QR là vùng lớn nhất. Đây là nơi dữ liệu thực tế được lưu trữ trong các phần 8 bit.
- Sửa lỗi: Khu vực thứ 7 chứa các mã dữ liệu sửa lỗi, là dữ liệu dư thừa có thể bù đắp cho bất kỳ sai sót nào trong dữ liệu.
- Các bit còn lại: Vùng thứ tám dành cho phần đệm, được sử dụng khi dữ liệu không vừa với các khối 8 bit.
Mã QR xử lý việc sửa lỗi như thế nào?
Mã QR sử dụng mã Reed Solomon để sửa lỗi — phương pháp tương tự được sử dụng trên đĩa CD, DVD và Blu-ray — có thể khôi phục từ 7% đến 30% dữ liệu bị hỏng. Tuy nhiên, bạn càng sử dụng nhiều tính năng sửa lỗi thì càng có ít dung lượng cho dữ liệu thực tế. Do đó, cần có sự cân bằng giữa lượng dữ liệu bạn muốn lưu trữ và lượng dữ liệu sửa lỗi mà bạn muốn.
Phương pháp sửa lỗi cho phép mã QR hoạt động ngay cả khi bạn thêm hình ảnh và biểu tượng, khiến chúng trở nên vô cùng linh hoạt. Chúng có thể được sử dụng trên danh thiếp, trong nhà hàng hoặc thậm chí để chia sẻ thông tin Wi-Fi với khách.
Cách tạo mã QR
Có rất nhiều cách để tạo QR cho riêng mình, từ ứng dụng cho đến trang web. Mặc dù tôi không quảng cáo bất kỳ phương pháp nào, nhưng tôi đã sử dụng trình tạo zxing và trình tạo của Quickchart để đạt được kết quả tốt.
Bạn có thể sử dụng menu Share để tạo mã QR cho trang web trên Android hoặc iOS.
- Mở trang web bạn muốn tạo mã QR trong trình duyệt.
- Nhấn vào nút ba chấm.
- Chọn Share.
- Chọn Mã QR.
- Tải xuống mã QR. Sau khi tải xuống, bạn có thể chia sẻ nó với người khác để truy cập nhanh vào đường link đó.
Phương pháp này sẽ hoạt động trên tất cả các trình duyệt trên cả nền tảng di động của Google và Apple.
Thử xem bạn scan được QR này của tôi không nhé. (Có thể dùng ứng dụng camera của điện thoại hoặc app Zalo để scan QR nhé).
Và đây là hướng dẫn cách tạo QR giống như vậy