Barcode & QR Symbology Documentation
In-depth technical reference for all 50+ supported 1D linear barcodes, 2D matrix standards, and postal symbols. Includes character encoding limits, checksum validation math, quiet zone rules, and direct deep-linking instructions.
QR Code (Quick Response)
Originally created in 1994 by Denso Wave, QR Code is the world's most ubiquitous 2D matrix barcode. It utilizes three distinctive square finder patterns positioned in three corners, enabling omnidirectional 360-degree scanning at high velocity.
Logo Embedding Best Practice: When placing a custom brand logo or icon into the center of a QR code, always enforce Error Correction Level H (30% redundancy). This ensures the scanner can reconstruct the obscured central data modules without any scanning failure.
Data Matrix (ECC 200)
Data Matrix ECC 200 features an "L-shaped" solid alignment finder pattern on two adjacent borders and alternating dark/light timing cells on the opposite edges. It offers the highest information density per square millimeter of any 2D code.
Widely mandated by the US Department of Defense (MIL-STD-130 UID) and global pharmaceutical serialization standards (GS1 DataMatrix) for direct part marking (DPM) via laser etching and dot peen.
Aztec Code
Invented in 1995 by Welchn Allyn, Aztec Code is defined by a single concentric square "bullseye" finder pattern located in the exact physical center of the code. Data modules spiral outwards from the core.
Because Aztec Code requires zero quiet zone margins, it can be printed right up to the edge of boarding passes, tickets, or smartphone screens without sacrificing decodability.
PDF417 (Portable Data File)
PDF417 consists of stacked rows of 1D linear codes. Each codeword is 17 modules wide and composed of 4 bars and 4 spaces. It can encode large text payloads, binary files, and biometric fingerprints directly on card stock.
Code 128 & GS1-128
Code 128 is the highest-density 1D linear symbology in commercial use. It encodes the entire 128-character ASCII table using three dynamic subsets:
- Subset A: Uppercase letters, digits, control characters, ASCII 00-95.
- Subset B: Uppercase and lowercase letters, digits, and ASCII punctuation 32-127.
- Subset C: Pairs of numeric digits 00-99 encoded into single bar patterns (double density).
EAN-13 (International Retail)
EAN-13 (European / International Article Number) is the global standard for retail point-of-sale scanning everywhere outside North America. It encodes a 13-digit sequence: Country Prefix (2-3 digits), Manufacturer Code, Product Code, and a final Modulo 10 Check Digit.
UPC-A (Universal Product Code)
UPC-A is the standard retail barcode used throughout the United States and Canada. It encodes exactly 12 numeric digits (or 11 data digits + 1 Modulo 10 check digit). An EAN-13 barcode with a leading zero ('0') is mathematically identical to a 12-digit UPC-A barcode.
ITF-14 (Interleaved 2 of 5)
ITF-14 encodes 14 numeric digits and is printed with heavy black horizontal borders called Bearer Bars. These bearer bars suppress plate-spread and stop misreads caused when a handheld laser scanner skims across the edge of corrugated cardboard packaging.
Symbology Decision Matrix
| Symbology | Type | Character Set | Max Data | Checksum | Ideal Use Case |
|---|---|---|---|---|---|
| QR Code | 2D Matrix | Alphanumeric / UTF-8 / Binary | 4,296 chars | Reed-Solomon (7-30%) | Smartphones, Wi-Fi, URLs, Menus |
| Data Matrix | 2D Matrix | Full ASCII / Binary (ECC 200) | 2,335 chars | Reed-Solomon (25-33%) | Direct Part Marking, Pharma, Tiny Parts |
| Aztec Code | 2D Matrix | Full ASCII / Binary | 3,067 chars | Reed-Solomon (5-95%) | Airline Tickets, Rail Passes (No quiet zone) |
| PDF417 | Stacked 2D | Full ASCII / Binary | 1,850 chars | Reed-Solomon (Levels 0-8) | Driver Licenses, Government ID, Shipping |
| Code 128 | 1D Linear | Full ASCII (Subsets A/B/C) | ~80 chars practical | Modulo 103 | Logistics, Inventory SKUs, Warehouse |
| EAN-13 | 1D Retail | Numeric (12-13 digits) | 13 digits | GS1 Modulo 10 | Global Retail Point of Sale |
| UPC-A | 1D Retail | Numeric (11-12 digits) | 12 digits | GS1 Modulo 10 | North American Retail Point of Sale |
| ITF-14 | 1D Logistics | Numeric (14 digits) | 14 digits | GS1 Modulo 10 | Corrugated Master Carton Shipping |
URL Parameter Deep-Linking API
Universal Code Studio includes a zero-dependency URL router that lets you link directly to any pre-configured symbology, payload wizard, or pre-filled barcode value:
# Open Code 128 with prefilled data:
https://yourdomain.com/?symbology=code128&data=SKU-990022
# Open Wi-Fi Wizard with pre-configured network:
https://yourdomain.com/?wizard=wifi&ssid=StudioGuest&auth=WPA
# Open Data Matrix with custom payload:
https://yourdomain.com/?symbology=datamatrix&data=LOT-2026-X99
JavaScript Rendering Integration
To render high-speed vector barcodes directly inside your own web applications using pure JavaScript:
// 1. Include bwip-js browser bundle in your HTML:
<script src="https://cdn.jsdelivr.net/npm/bwip-js@latest/dist/bwip-js-min.js"></script>
// 2. Render barcode directly to an HTML5 canvas element:
bwipjs.toCanvas('myCanvas', {
bcid: 'code128', // Symbology identifier
text: 'INVENTORY-987654', // Payload string
scale: 3, // 3x scaling factor
height: 25, // Bar height in mm
includetext: true, // Show human-readable text
textxalign: 'center' // Text alignment
});