QRコードの仕様を完全理解する(サンプルQR付き)

QRコード(QR Code®)は、デンソーウェーブが開発した二次元コードで、JIS X 0510・ISO/IEC 18004 として標準化されています。本記事では、バージョン・データ容量・符号化モード・構造・マスクといった仕様を、実際に生成したサンプルQRコードとともに解説します。

このページのサンプルQRコードは、お使いのブラウザ内でその場で生成しています。スマートフォンのカメラで読み取って動作を確かめてみてください(QR Code はデンソーウェーブの登録商標です)。

1. 基本構造とモジュール

QRコードは白黒のマス目で構成され、その最小単位をモジュールと呼びます。正方形の中に、データ領域と、読み取りを助けるための機能パターンが配置されています。

2. バージョンとモジュール数

QRコードにはバージョン1〜40があり、数字が大きいほどマス目が増え、より多くのデータを格納できます。一辺のモジュール数は次の式で決まります。

モジュール数 = 4 × バージョン + 17(例:V1=21×21、V10=57×57、V40=177×177)

下のサンプルは、同じURLを異なるバージョンで生成したものです。データ量が同じでも、バージョンを上げるとマス目が細かくなることが分かります。

3. データ容量と符号化モード

QRコードは入力データの種類に応じて4つの符号化モードを使い分け、効率よく詰め込みます。数字だけなら多く、漢字を含むと少なくなります。

モード対象最大容量(V40・誤り訂正L)
数字0〜9約 7,089 文字
英数字0-9・A-Z・記号9種約 4,296 文字
8ビットバイトバイナリ(UTF-8など)約 2,953 バイト
漢字Shift_JIS の漢字約 1,817 文字

同じバージョンでも、内容の種類で入る量が変わります。下は数字・英数字・URL(バイトモード)のサンプルです。

4. 誤り訂正レベル(L / M / Q / H)

QRコードは一部が汚れても読めるよう、冗長な復元データを持ちます。レベルは4段階で、高いほど壊れに強い反面、同じ情報でもマス目が増えます。

レベル復元可能な目安用途
L約7%容量優先・きれいな環境
M約15%一般的な印刷物(標準)
Q約25%やや過酷な環境
H約30%ロゴ入りデザインQRなど

同じURLを各レベルで生成したサンプルです。L→H とレベルを上げるとマス目が密になります。

誤り訂正の仕組み(リード・ソロモン符号)は、別記事「QRコードの誤り訂正レベルを理解する」で詳しく解説しています。

5. マスク処理

QRコードは、白黒の偏りや誤検出を避けるため、データ領域に8種類(0〜7)のマスクパターンのいずれかを重ねます。生成時に最も読み取りやすいパターンが自動選択され、どれを使ったかは形式情報に記録されます。読み取り時はこれを解除して元データを取り出します。

6. 派生規格:Micro QR / rMQR

Free Tool QR Code Generator で実際に作る 誤り訂正レベル・バージョン・サイズ・余白・色を細かく指定して、QRコードを PNG / SVG で生成・ダウンロードできます。

よくある質問(FAQ)

QRコードのバージョンとは何ですか?

バージョンは1〜40まであり、数字が大きいほどマス目(モジュール)が増えて多くのデータを格納できます。一辺のモジュール数は「4×バージョン+17」で決まり、V1は21×21、V40は177×177になります。

QRコードにはどのくらいのデータを格納できますか?

入力データの種類に応じた4つの符号化モードで効率よく詰め込みます。最大容量(V40・誤り訂正L)は、数字モードで約7,089文字、英数字で約4,296文字、8ビットバイトで約2,953バイト、漢字で約1,817文字です。

QRコードのマスク処理とは何ですか?

白黒の偏りや誤検出を避けるため、データ領域に8種類(0〜7)のマスクパターンのいずれかを重ねる処理です。生成時に最も読み取りやすいパターンが自動選択され、どれを使ったかは形式情報に記録されます。

← 技術ブログ一覧へ戻る