JavascriptでQRコードのjsファイルとサンプル(サイトのHTML)を頂戴して、ちょっとだけ改造。
部品として引用しやすいよう、CreateQR()関数にした。
<SCRIPT src="http://211.5.227.59/QRCode.js" type=text/javascript></SCRIPT>
<SCRIPT Language="Javascript">
CreateQR(4,'http://211.5.227.59/MovableType/mt4i.cgi')
</SCRIPT>
なんていう感じで書くと、このblogのインデックスページのようになる。
引数として、サイズとURLを渡すようにし、エラー訂正レベルはMで固定しているが、本来ならURLのバイト数をカウントして、サイズを自動的に調整したいところ。
とりあえず、サイズと格納できる情報(バイト数)とエラー訂正レベルの関係を表にまとめた
Ver | セル構成 | 誤訂正レベル | データビット数 | 英数字 | バイナリ | 漢字 |
1L | 21×21 | L | 152 | 41 | 25 | 17 |
1M | 21×21 | M | 128 | 34 | 20 | 14 |
1Q | 21×21 | Q | 104 | 27 | 16 | 11 |
1H | 21×21 | H | 72 | 17 | 10 | 7 |
2L | 25×25 | L | 272 | 77 | 47 | 32 |
2M | 25×25 | M | 224 | 63 | 38 | 26 |
2Q | 25×25 | Q | 176 | 48 | 29 | 20 |
2H | 25×25 | H | 128 | 34 | 20 | 14 |
3L | 29×29 | L | 440 | 127 | 77 | 53 |
3M | 29×29 | M | 352 | 101 | 61 | 42 |
3Q | 29×29 | Q | 272 | 77 | 47 | 32 |
3H | 29×29 | H | 208 | 58 | 35 | 24 |
4L | 33×33 | L | 640 | 187 | 114 | 78 |
4M | 33×33 | M | 512 | 149 | 90 | 62 |
4Q | 33×33 | Q | 384 | 111 | 67 | 46 |
4H | 33×33 | H | 288 | 82 | 50 | 34 |
5L | 37×37 | L | 864 | 255 | 154 | 106 |
5M | 37×37 | M | 688 | 202 | 122 | 84 |
5Q | 37×37 | Q | 496 | 144 | 87 | 60 |
5H | 37×37 | H | 368 | 106 | 64 | 44 |
6L | 41×41 | L | 1088 | 322 | 195 | 134 |
6M | 41×41 | M | 864 | 255 | 154 | 106 |
6Q | 41×41 | Q | 608 | 178 | 108 | 74 |
6H | 41×41 | H | 480 | 139 | 84 | 58 |
7L | 45×45 | L | 1248 | 370 | 224 | 154 |
7M | 45×45 | M | 992 | 293 | 178 | 122 |
7Q | 45×45 | Q | 704 | 207 | 125 | 86 |
7H | 45×45 | H | 528 | 154 | 93 | 64 |
8L | 49×49 | L | 1552 | 461 | 279 | 192 |
8M | 49×49 | M | 1232 | 365 | 221 | 152 |
8Q | 49×49 | Q | 880 | 259 | 157 | 108 |
8H | 49×49 | H | 688 | 202 | 122 | 84 |
9L | 53×53 | L | 1856 | 552 | 335 | 230 |
9M | 53×53 | M | 1456 | 432 | 262 | 180 |
9Q | 53×53 | Q | 1056 | 312 | 189 | 130 |
9H | 53×53 | H | 800 | 235 | 143 | 98 |
10L | 57×57 | L | 2192 | 652 | 395 | 271 |
10M | 57×57 | M | 1728 | 513 | 311 | 213 |
10Q | 57×57 | Q | 1232 | 364 | 221 | 151 |
10H | 57×57 | H | 976 | 288 | 174 | 119 |