Technical Specifications - QRCode
The QRCode symbol is an ISO international standard (IEC 18004). You are allowed to use it within your applications.
The QRCode code is a 2D barcode that can encode a large amount of information within a square symbol. All 256 characters can be encoded.
You may use multiple symbols to spread your information in order to create a bigger message.
This barcode contains a way to detect and correct errors based on the Reed Solomon algorithm. You can use L, M, Q, or H which recovers respectively, approximately 7%, 15%, 25% and 30%. The advised quality is M (15%).
Sizes
Capacity | ||||
---|---|---|---|---|
Version | Error | Numeric | Alphanumeric | Binary |
1 Micro | L | 5 | - | - |
2 Micro | L | 10 | 6 | - |
2 Micro | M | 8 | 5 | - |
3 Micro | L | 23 | 14 | 9 |
3 Micro | M | 18 | 11 | 7 |
4 Micro | L | 35 | 21 | 15 |
4 Micro | M | 30 | 18 | 13 |
4 Micro | Q | 21 | 13 | 9 |
1 | L | 41 | 25 | 17 |
1 | M | 34 | 20 | 14 |
1 | Q | 27 | 16 | 11 |
1 | H | 17 | 10 | 7 |
2 | L | 77 | 47 | 32 |
2 | M | 63 | 38 | 26 |
2 | Q | 48 | 29 | 20 |
2 | H | 34 | 20 | 14 |
3 | L | 127 | 77 | 53 |
3 | M | 101 | 61 | 42 |
3 | Q | 77 | 47 | 32 |
3 | H | 58 | 35 | 24 |
4 | L | 187 | 114 | 78 |
4 | M | 149 | 90 | 62 |
4 | Q | 111 | 67 | 46 |
4 | H | 82 | 50 | 34 |
5 | L | 255 | 154 | 106 |
5 | M | 202 | 122 | 84 |
5 | Q | 144 | 87 | 60 |
5 | H | 106 | 64 | 44 |
6 | L | 322 | 195 | 134 |
6 | M | 255 | 154 | 106 |
6 | Q | 178 | 108 | 74 |
6 | H | 139 | 84 | 58 |
7 | L | 370 | 224 | 154 |
7 | M | 293 | 178 | 122 |
7 | Q | 207 | 125 | 86 |
7 | H | 154 | 93 | 64 |
8 | L | 461 | 279 | 192 |
8 | M | 365 | 221 | 152 |
8 | Q | 259 | 157 | 108 |
8 | H | 202 | 122 | 84 |
9 | L | 552 | 335 | 230 |
9 | M | 432 | 262 | 180 |
9 | Q | 312 | 189 | 130 |
9 | H | 235 | 143 | 98 |
10 | L | 652 | 395 | 271 |
10 | M | 513 | 311 | 213 |
10 | Q | 364 | 221 | 151 |
10 | H | 288 | 174 | 199 |
11 | L | 772 | 468 | 321 |
11 | M | 604 | 366 | 251 |
11 | Q | 427 | 259 | 177 |
11 | H | 331 | 200 | 137 |
12 | L | 883 | 535 | 367 |
12 | M | 691 | 419 | 287 |
12 | Q | 489 | 296 | 203 |
12 | H | 374 | 227 | 155 |
13 | L | 1022 | 619 | 425 |
13 | M | 796 | 483 | 331 |
13 | Q | 580 | 352 | 241 |
13 | H | 427 | 259 | 117 |
14 | L | 1101 | 667 | 458 |
14 | M | 871 | 528 | 362 |
14 | Q | 621 | 376 | 258 |
14 | H | 468 | 283 | 194 |
15 | L | 1250 | 758 | 520 |
15 | M | 991 | 600 | 412 |
15 | Q | 703 | 426 | 292 |
15 | H | 530 | 321 | 220 |
16 | L | 1408 | 854 | 586 |
16 | M | 1082 | 656 | 450 |
16 | Q | 775 | 470 | 322 |
16 | H | 602 | 365 | 250 |
17 | L | 1548 | 938 | 644 |
17 | M | 1212 | 734 | 504 |
17 | Q | 876 | 531 | 364 |
17 | H | 674 | 408 | 280 |
18 | L | 1725 | 1046 | 718 |
18 | M | 1346 | 816 | 560 |
18 | Q | 948 | 574 | 394 |
18 | H | 746 | 452 | 310 |
19 | L | 1903 | 1153 | 792 |
19 | M | 1500 | 909 | 624 |
19 | Q | 1063 | 644 | 442 |
19 | H | 813 | 493 | 338 |
20 | L | 2061 | 1249 | 858 |
20 | M | 1600 | 970 | 666 |
20 | Q | 1159 | 702 | 482 |
20 | H | 919 | 557 | 382 |
21 | L | 2232 | 1352 | 929 |
21 | M | 1708 | 1035 | 771 |
21 | Q | 1224 | 742 | 509 |
21 | H | 969 | 587 | 403 |
22 | L | 2409 | 1460 | 1003 |
22 | M | 1872 | 1134 | 779 |
22 | Q | 1358 | 823 | 565 |
22 | H | 1056 | 640 | 439 |
23 | L | 2620 | 1588 | 1091 |
23 | M | 2059 | 1248 | 857 |
23 | Q | 1468 | 890 | 611 |
23 | H | 1108 | 672 | 461 |
24 | L | 2812 | 1704 | 1171 |
24 | M | 2188 | 1326 | 911 |
24 | Q | 1588 | 963 | 611 |
24 | H | 1228 | 744 | 511 |
25 | L | 3057 | 1853 | 1273 |
25 | M | 2395 | 1451 | 997 |
25 | Q | 1718 | 1041 | 715 |
25 | H | 1286 | 744 | 511 |
26 | L | 3283 | 1990 | 1367 |
26 | M | 2544 | 1542 | 1059 |
26 | Q | 1804 | 1094 | 751 |
26 | H | 1425 | 864 | 593 |
27 | L | 3517 | 2132 | 1465 |
27 | M | 2701 | 1637 | 1125 |
27 | Q | 1933 | 1172 | 805 |
27 | H | 1501 | 910 | 625 |
28 | L | 3669 | 2223 | 1528 |
28 | M | 2857 | 1732 | 1190 |
28 | Q | 2085 | 1263 | 868 |
28 | H | 1581 | 958 | 658 |
29 | L | 3909 | 2369 | 1628 |
29 | M | 3035 | 1839 | 1264 |
29 | Q | 2181 | 1322 | 908 |
29 | H | 1677 | 1016 | 698 |
30 | L | 4158 | 2520 | 1732 |
30 | M | 3289 | 1994 | 1370 |
30 | Q | 2358 | 1429 | 982 |
30 | H | 1782 | 1080 | 742 |
31 | L | 4417 | 2677 | 1840 |
31 | M | 3486 | 2113 | 1452 |
31 | Q | 2473 | 1499 | 1030 |
31 | H | 1897 | 1150 | 790 |
32 | L | 4686 | 2840 | 1952 |
32 | M | 3693 | 2238 | 1538 |
32 | Q | 2670 | 1618 | 1112 |
32 | H | 2202 | 1226 | 842 |
33 | L | 4965 | 3009 | 2068 |
33 | M | 3909 | 2369 | 1628 |
33 | Q | 2805 | 1700 | 1168 |
33 | H | 2157 | 1307 | 898 |
34 | L | 5253 | 3183 | 2188 |
34 | M | 4134 | 2506 | 1722 |
34 | Q | 2949 | 1787 | 1228 |
34 | H | 2301 | 1394 | 958 |
35 | L | 5529 | 3351 | 2303 |
35 | M | 4343 | 2632 | 1809 |
35 | Q | 3081 | 1867 | 1283 |
35 | H | 2361 | 1431 | 983 |
36 | L | 5836 | 3537 | 2431 |
36 | M | 4588 | 2780 | 1911 |
36 | Q | 3244 | 1966 | 1351 |
36 | H | 2524 | 1530 | 1051 |
37 | L | 6153 | 3729 | 2563 |
37 | M | 4775 | 2894 | 1989 |
37 | Q | 3417 | 2071 | 1423 |
37 | H | 2625 | 1591 | 1093 |
38 | L | 6479 | 3927 | 2699 |
38 | M | 5039 | 3054 | 2099 |
38 | Q | 3599 | 2181 | 1499 |
38 | H | 2735 | 1658 | 1139 |
39 | L | 6743 | 4087 | 2809 |
39 | M | 5313 | 3220 | 2213 |
39 | Q | 3791 | 2298 | 1579 |
39 | H | 2927 | 1774 | 1219 |
40 | L | 7089 | 4296 | 2953 |
40 | M | 5596 | 3391 | 2331 |
40 | Q | 3993 | 2420 | 1663 |
40 | H | 3057 | 1852 | 1273 |
Details
The QRCode exists in two modes, Micro and Full. Micro allows you to encode information in a restricted size. The Micro barcode is composed of one finder pattern, whereas the Full contains three finder patterns.
There are 4 types of characters that can be encoded. Each of them is encoded with different number of bits. Note that the alphanumeric type doesn't contain lowercase letters. If you wish to encode lowercase letters, it will be encoded using the byte type. Barcode Bakery will always attempt to generate the smallest bitstream possible while conserving all your data. The types are listed below in size order.
- Numeric: Encodes digits, [0-9]. Normally, 3 digits represent 10 bits.
- Alphanumeric: Encodes 45 characters. [0-9] [A-Z] [SPACE] $ % * + - . / : (no comma). Normally, two characters represent 11 bits.
- Binary: Encodes ASCII characters 0 to 255. Encoded on 8 bits.
- Kanji: Not supported in this release.
QRCode applies a mask to your data in order to make it better readable for the barcode reader. The operation of searching the best mask is extremely CPU consuming. It is possible to force that a mask not be applied, in which case, your barcode will be generated faster, but may be harder to read for the barcode reader. See the method setMask() for more details.
Barcode Bakery Supports
Supports | |
---|---|
Encodes Characters, Numbers, Binary | |
Encodes on many codes (Structured Append) | |
Encodes FNC1 | |
Extended Channel Interpretation (Arabic, Hebrew, etc.) | |
Encodes Kanji | |
Specific to Node.js package | |
Node 14+, Canvas 2+ |