Qraft (クラフト)

バイナリモード

読み: バイナリモード

バイナリモード (Byte Mode) は、QR コードの 4 つのエンコードモードのうち最も汎用性が高いモードです。1 文字を 8 ビット (1 バイト) で表現し、0x00 から 0xFF までの任意のバイト値を格納できます。数字モード英数字モードでは扱えない小文字アルファベット、日本語 (UTF-8)、絵文字、さらにはバイナリデータまで、あらゆるデータを QR コードに収められます。

汎用性の代償として、データ効率は他のモードより低くなります。数字モードが 3 桁を 10 ビットで表現するのに対し、バイナリモードでは 3 桁に 24 ビット必要です。同じ QR コードサイズで格納できるデータ量は、数字モードの約 40% にとどまります。最大格納量はバージョン 40 (177×177 モジュール) で 2,953 バイトです。

実務上、URL をバイナリモードで格納するケースが最も多いでしょう。URL に小文字が含まれると自動的にバイナリモードが選択されます。前述のとおり URL を大文字に変換すれば英数字モードに切り替わりますが、パスに大文字・小文字の区別があるサービス (GitHub のリポジトリ名など) では変換できません。日本語テキストを直接格納する場合は UTF-8 エンコーディングが使われ、1 文字あたり 3 バイトを消費するため、長文には向きません。