SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(ComponentOne)

QRコードを作成するASP.NETアプリケーションの作成

ComponentOne Studioを活用したASP.NETアプリケーションの作成

  • このエントリーをはてなブックマークに追加

C1QRCodeコントロールの概要

 QRコード(Quick Response Code)は、白色背景の四角いグリッド内に並べられた黒色の四角い点で構成される2次元バーコードの一種で、専用のリーダーを必要とせず、カメラやスマートフォンなどのイメージングデバイスで読み取ることができる機械読み取り式のコードです。

 バーコードとは異なり、QRコードは縦横の両方向にデータを格納するため、同じスペースに従来のバーコードの最大100倍の情報を格納することができます。

 また、数字だけでなく英字や漢字などの多言語のデータも格納できるので、出荷状態の詳細などを追跡するための情報をQRコード化して製品パッケージやラベルに使用したり、広告・新聞・雑誌などからWebサイトに誘導したりする目的で広く使用されています。

 最大情報格納量は、バージョンを最大(40)、誤り訂正レベルを最低(L)にした場合、以下の文字数を格納できます。

  • 数字のみ:最大7,089文字
  • 英数(US-ASCII):最大4,296文字
  • バイナリ(8ビット):最大2,953バイト
  • 漢字・かな(Shift_JIS):最大1,817文字

 C1QRCodeコントロールは、このQRコードを作成するコントロールです。使い方はとても簡単で、Textプロパティに文字を格納するだけで、その情報をQRコード化します。

C1QRCodeコントロールの主な機能

 C1QRCodeコントロールは、以下の主な機能を持っています。

サイズ

 必要に応じてQRコードのサイズおよび解像度を変更できます。

 QRコードは、容易にスキャンできるくらいのサイズにすると同時に、あまりスペースを取らないように小さくする必要があります。その際、コントロールおよびコントロール内のシンボルのサイズを変更することで、コントロールの解像度を向上できます。

 シンボルのサイズを変更するには、ページデザイナではSymbolSizeプロパティを、ソースビューの場合は<wijmo:C1QRCode>タグ内でSymbolSizeプロパティを設定して、QRコードのサイズを変更します。

 SymbolSizeプロパティはデフォルトでは「3」です。

SymbolSizeプロパティを左から5、3、8、に設定した時のQRコードのサイズ比較
SymbolSizeプロパティを左から5、3、8、に設定した時のQRコードのサイズ比較

 QRコードの色を変更して、ブランドに合わせてカスタマイズしたQRコードを作成できます。通常、QRコードは白黒ですがQRコードのスキャン性能を損なうことなくコントロールに色を付けることができます。

 色の変更は、 デザイナの場合はプロパティウィンドウで、BackColorおよびForeColorプロパティを設定します。ソースビューの場合は、<wijmo:C1QRCode>タグ内でBackColorおよびForeColorプロパティを設定して、QRCodeに色を追加します。

カラーのQRコードを作成できる
カラーのQRコードを作成できる

エラー修正

 QRコードが損傷した場合でもデータを復元できるように、最大30%のエラー修正レベルを設定することができます。

 これは、データの一部が欠けているまたはQRコードが損傷している場合などに、QRコードから情報を復元するために役立ちます。

 この機能は、画像やロゴを乗せてカスタマイズしたQRコードを作成する場合に便利です。QRコードに画像やロゴを乗せると、一部のコードが損なわれますが、それでも容易にスキャンすることができます。

 QRCodeコントロールには4つのエラー修正レベルがあります。

  • Low L:7%のエラーを許容します。
  • Medium M:15%のエラーを許容します。
  • Quartile Q:25%のエラーを許容します。
  • High H:30%のエラーを許容します。

 QRCodeコントロールのエラー修正レベルを変更するには、デザイナの場合はスマートタグをクリックし[C1QRCodeのタスクメニュー]からErrorCorrectionLevelコンボボックスでエラー修正レベルを選択します。またはプロパティウィンドウでErrorCorrectionLevelプロパティを設定します。

 ソースビューの場合は、<wijmo:C1QRCode>タグ内のErrorCorrectionLevelプロパティを設定して、QRCodeのエラー修正レベルを変更します。

スマートタグのErrorCorrectionLevelコンボボックスでエラー修正レベルを選択
スマートタグのErrorCorrectionLevelコンボボックスでエラー修正レベルを選択

エンコード

 QRCodeは、データを効率よく保存するため、4つのエンコードモードで構成されています。

Numeric

 数字の0~9をエンコードできます。

AlphaNumeric

 数字の0~9、大文字のA~Z、およびその他の文字(スペース $ % * + - . / : ) ,)をエンコードできます。

Byte

 デフォルトでは、ISO/IEC 8859-1をエンコードできます。また、定義されているその他の一部の文字セットをエンコードすることもできます。

Automatic

 コントロールに追加されたテキストに基づいてエンコードモードを設定します。

 QRCodeコントロールのエンコードモードを変更するには、デザイナの場合はスマートタグをクリックし[C1QRCodeのタスクメニュー]からEncodingコンボボックスのエンコードモードを選択します。または、プロパティウィンドウで、Encodingプロパティを設定します。

 ソースビューの場合は、<wijmo:C1QRCode>タグ内のEncodingプロパティを設定して、QRCodeのエンコードモードを変更します。

スマートタグのEncodingコンボボックスでエンコードモードを選択
スマートタグのEncodingコンボボックスでエンコードモードを選択

ロゴの追加

 QRコードでは、エラー修正レベルをH(High)に設定すると、30%のエラーを許容できます。これにより、QRコードのスキャン性能を損なうことなく、QRコードの上に画像を乗せてQRCodeをカスタマイズできます。

 ただし、QRコードのサイズの1/3を超える大きさの画像を乗せると、QRコードが正しく認識されない可能性があります。ロゴの設定方法はオンラインヘルプを参照してください。

QRコードにロゴを乗せることができる(ヘルプより抜粋)
QRコードにロゴを乗せることができる(ヘルプより抜粋)

QRコードの構造

 QRコードは以下の要素から構成されています。色ごとに図形とその機能を表示しています。

QRコードの構造(ヘルプより抜粋)
QRコードの構造(ヘルプより抜粋)
ポジションマーカー

 QRCodeの境界を識別するために使用されます。

書式情報

 エラー修正レベルやマスク情報など、失われたデータの復元に使用される情報を保持します。

アラインメントマーカー

 さまざまな角度からコードをスキャンできるようにします。

タイミングコード

 コードのサイズの決定に使用されます。

バージョン情報

 コードリーダーが読み取っているコードのタイプを判定するために使用されます。

デッドスペース

 データを周囲から分離します。

データ

 QRCodeに関連付けられている項目に関する情報を保持します。

次のページ
C1Splitterコントロールの概要

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ComponentZine(ComponentOne)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8592 2015/03/26 18:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング