vCardの内容
vCardは、ラベル付きの行でできたプレーンテキストで、BEGIN:VCARDで始まり、END:VCARDで終わります。各行は、表示名、電話番号、メールアドレスなどの1つのプロパティを持ちます。スマートフォンやメールソフトから連絡先をエクスポートしたときの.vcfファイルにも、同じテキストが入っています。
QRコード用の最小のvCard 3.0は、1行に1つのプロパティで、次のようになります。BEGIN:VCARD、VERSION:3.0、N:Lee;Jordan、FN:Jordan Lee、ORG:Maple Street Bakery、TEL:+15035550123、EMAIL:jordan@example.com、URL:https://example.com、END:VCARD。Nは、構造化された名前(姓が先で、セミコロンで区切る)、FNは、表示する形の名前です。
- N:構造化された名前(姓;名;ミドルネーム;敬称;接尾辞)
- FN:表示名
- TEL:電話番号、できれば国際形式
- EMAIL:メールアドレス
- ORG:会社または組織
- TITLE:役職
- URLとADR:Webサイトと住所
どのバージョンを使うか
QRコードには、バージョン3.0が、今でも最も安全な選択です。ほぼすべてのスマートフォンが読み取れるからです。1998年のRFC 2426で定義されています。バージョン4.0は、2011年にRFC 6350で定義された現行の標準で、UTF-8が必須ですが、古いリーダーの中には、扱いが一貫しないものもあります。
バージョン3.0では、NとFNの両方が必要ですが、4.0では、FNだけが必須です。どのバージョンでも、VERSION行は、BEGIN:VCARDのすぐ後に置いてください。
サイズと読み取りやすさのトレードオフ
vCardに項目を加えるたびに、文字数が増え、文字数が増えるとQRコードの密度が上がって、モジュールが小さくなります。名前、電話番号1つ、メールアドレス1つのカードなら、名刺サイズでも簡単に読み取れます。住所、複数の電話番号、長いメモ、埋め込み写真を加えると、コードの型番が大きくなり、はるかに大きく印刷する必要が出てきます。
よくある問題は写真です。base64でエンコードした画像は、数千文字になることがあり、実用的なコードには、ほとんど収まりません。代わりに、ホストした.vcfファイルや連絡先ページへの短いリンクをエンコードするのが、一般的です。コードが小さく済み、あとから内容を変更することもできます。