13,005
回編集
(→概要) |
|||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
QRコード (Quick Response Code) は1994年にデンソーウェーブによって開発された2次元バーコードである。<br> | |||
従来の1次元バーコードと比較して、縦横両方向に情報を持つため、より多くのデータを格納できる特徴がある。<br> | |||
<br> | |||
英数字で最大約4300文字、漢字で約1800文字までの情報を記録でき、誤り訂正機能によりコードの一部が汚れたり破損したりしても読み取りが可能である。<br> | |||
また、360度どの角度からでもスキャンでき、高速な読み取りが可能である。<br> | |||
<br> | |||
当初は自動車部品の管理用に開発されたが、現在では商品管理、マーケティング、決済、身分証明等、幅広い用途で活用されている。<br> | |||
特に、スマートフォンの普及により、URLやテキスト情報の共有手段として一般的になっている。<br> | |||
<br> | |||
C++で利用可能なQRコードライブラリについて、それぞれの特徴を以下に示す。<br> | |||
<br> | |||
これらのライブラリの多くは、エラー処理、バージョン管理、マルチスレッド対応等、実務で必要となる機能も備えている。<br> | |||
また、ZXing-C++ライブラリは機能が豊富である反面、学習曲線が比較的急である。<br> | |||
libqrencodeライブラリは単一機能に特化しているため、導入が容易である。<br> | |||
<br> | |||
* ZXing-C++ライブラリ | |||
*: URL : https://github.com/zxing-cpp/zxing-cpp | |||
*: ライセンス : [[その他_-_ソフトウェアライセンス#Apache_Software_License_2.0|Apache 2.0]] | |||
*: <br> | |||
*: JavaのZXingをC++に移植したライブラリである。 | |||
*: QRコードの読み取りと生成の両方に対応しており、広範なバーコードフォーマットをサポートしている。 | |||
*: オープンソースであり、活発なコミュニティによって継続的にメンテナンスされている。 | |||
*: <br> | |||
* QZXingライブラリ | |||
*: URL : https://github.com/ftylitak/qzxing | |||
*: ライセンス : [[その他_-_ソフトウェアライセンス#Apache_Software_License_2.0|Apache 2.0]] | |||
*: <br> | |||
*: Qtでの使用に最適化されたQRコードライブラリである。 | |||
*: ZXingをベースにしているが、Qtフレームワークとの統合が強化されている。 | |||
*: <br> | |||
*: <u>QMLからの直接利用が可能であり、特に、モバイルアプリケーション開発に適している。</u> | |||
*: また、カメラフィードからのリアルタイムデコードにも対応している。 | |||
*: <br> | |||
* libqrencodeライブラリ | |||
*: URL : https://fukuchi.org/works/qrencode/ , https://github.com/fukuchi/libqrencode | |||
*: ライセンス : [[その他_-_ソフトウェアライセンス#LGPL(GNU_Lesser_General_Public_License)|LGPL 2.1]] | |||
*: <br> | |||
*: QRコード生成に特化したライブラリであり、高速な処理と高品質な出力が特徴である。 | |||
*: CベースでC++からも容易に利用可能で、PNG形式での出力やSVGフォーマットもサポートしている。 | |||
*: 様々な誤り訂正レベルや符号化モードに対応しており、マイクロQRコードの生成も可能である。 | |||
*: また、サイズの最適化や構造化追加等の機能も備えている。 | |||
*: <br> | |||
* QuickQRライブラリ | |||
*: URL : https://quickqr.art/ , https://quickqr.art/app/subscription | |||
*: ライセンス : - | |||
*: <br> | |||
*: 最近のC++で記述された新しいライブラリであり、QRコードの生成に特化している。 | |||
*: テンプレートベースの設計により、コンパイル時の最適化が可能である。 | |||
*: また、カスタマイズ性が高く、様々なスタイルやデザインのQRコードを生成することができる。 | |||
*: <br> | |||
* Quirc | |||
*: URL : https://github.com/dlbeer/quirc | |||
*: ライセンス : [[その他_-_ソフトウェアライセンス#ISCライセンス|ISC]] | |||
*: <br> | |||
*: 軽量で高速なQRコードデコーダライブラリである。 | |||
*: <u>組み込みシステムやリソースが制限された環境での使用に適している。</u> | |||
*: APIがシンプルなため、直感的な使用が可能である。 | |||
*: <u>ただし、QRコードの生成機能は無い。</u> | |||
<br><br> | <br><br> | ||