Cách hoạt động
Tám loại mã
Bốn loại là mã ma trận 2D (Micro QR, Data Matrix, Aztec, PDF417) chứa văn bản, số sê-ri hay dữ liệu vé. Bốn loại là mã vạch thẳng (Code 128, Code 39, EAN-13, UPC-A), đọc được bằng máy quét bình thường ở cửa hàng.
bwip-js, bản JavaScript của Barcode Writer in Pure PostScript, mã hoá nội dung; công cụ tự vẽ các mô-đun nên file PNG, file SVG và bản xem trước là cùng một hình.
Ô nhập chỉ nhận những ký tự loại mã đó chứa được: chữ số cho EAN-13 và UPC-A, chữ hoa, chữ số và - . $ / + % dấu cách cho Code 39, ký tự ASCII in được cho các loại còn lại. Chuyển sang loại không chứa được nội dung đang gõ thì ô nhập được xoá.
Số kiểm tra
EAN-13 và UPC-A kết thúc bằng một số kiểm tra tính từ các số còn lại. Gõ 12 số (EAN-13) hoặc 11 số (UPC-A) thì số kiểm tra được thêm tự động; gõ đủ số mà số cuối sai thì công cụ báo kèm số đúng.
Các chữ số được nhân lần lượt với 1 và 3 cho EAN-13 (3 và 1 cho UPC-A) rồi cộng lại; số kiểm tra là số cần thêm để tổng tròn tới bội số của mười kế tiếp.
số kiểm tra = (10 − (Σ chữ số × trọng số) mod 10) mod 10
Kích thước và vùng trống
Mô-đun là bề rộng (pixel) của vạch mảnh nhất, hoặc cạnh của một ô vuông; ảnh bằng số mô-đun nhân với giá trị đó. Mã vạch thẳng cao 60 mô-đun, các vạch biên của EAN/UPC dài thêm 5 mô-đun xuống dòng số.
Lề là khoảng trống tính bằng mô-đun. Máy quét cần vùng trống: khoảng 10 mô-đun hai bên Code 128 và Code 39, 7 đến 11 cho EAN-13, 9 cho UPC-A, 1 đến 2 cho Data Matrix và PDF417; Aztec không cần. Mỗi loại mã bắt đầu với lề an toàn.





