福地健太郎のページ / 作品


libqrencode

ダウンロード

最新版

テスト版

※ qrencode-3.0.3 で getopt_long() に問題がある場合はこのパッケージをお試しください。

古い版

変更履歴

概要

libqrencode は QR コードを生成するための C ライブラリです。 QR コードは二次元バーコードの一種で、数字なら最大約7000桁、 英数字だと最大約4000字を埋め込むことができ、また誤り訂正能力に優れています。


サンプル

本ライブラリは以下の特徴があります。

仕様

libqrencode は JIS X0510:2004 で規定される、QR コード モデル2 を生成します。ただし、JIS X0510:2004 の規定のうち以下に挙げる項目については、 対応していません。

インストール

必要事項

一部のテストプログラムやユーティリティは SDL や PNG ライブラリを必要としますが、ライブラリ自体はそれらなしに使うことができます。 Microsoft Windows 上でのコンパイルには、Cygwin などの UNIX 的環境が必要となるでしょう。

コンパイルとインストール

単純に

./configure
make
make install

でインストールできる筈です。ライブラリ本体とヘッダファイルがそれぞれ適切な場所にインストールされます。 インストール先は通常だと /usr/local/lib および /usr/local/include に設定されますが、 configure スクリプトに適宜オプションを渡すことで変更できます。 ./configure --help とするとオプションの一覧が表示されます。

また、"qrencode" という名前のユーティリティツールが、/usr/local/bin にインストールされます。もしこのツールをインストールしたくない場合は、 configure 時に --without-tools というオプションを設定してください。

使い方

ライブラリの基本的な使い方は、ヘッダファイル (qrencode.h) に記されています。 Doxygen を使うと、ヘッダファイルからマニュアルを生成することができます。

マニュアル

注意: このライブラリはスレッドセーフではありません。

使用許諾

本ライブラリの著作権は、福地健太郎にあります。また、このライブラリは GNU Lesser General Public License (LGPL) の元で公開されています。 同ライセンスに従って、貴方は自由に本ライブラリを再配布したり改変したりすることができます。 細かい規定については LGPL を参照してください。

Copyright (C) 2006, 2007, 2008 Kentaro Fukuchi

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

連絡先

libqrencode の一次配布元はこのページ (http://megaui.net/fukuchi/works/qrencode/index.html) を参照してください。

バグ報告や提案・コメント・質問などは、福地健太郎までお寄せください。 ライセンスや使用条件についてのお問い合わせも左記までどうぞ。

ACKNOWLEDGMENTS

QR コードはデンソーウェーブの登録商標です。

リード-ソロモン符号の符号化ルーチンは Phil Karn (KA9Q) の著作物です。
Copyright (C) 2002, 2003, 2004, 2006 Phil Karn, KA9Q

参考

変更履歴

3.0.3 (2008.6.1)
  • 可搬性の向上。(Thanks to Gavan Fantom)
  • qrencode がロングオプション (例: "--help") を受け付けるようになった。
3.0.2 (2008.5.18)
  • C++ コンパイラでコンパイルできない問題を修正。(Thanks to wangsai)
  • バージョン7以上のシンボルで型番情報が間違ってエンコードされていた問題を修正。
  • configure スクリプトに "--without-tests" オプションを追加。
3.0.1 (2008.5.9)
  • Windows 等で、qrencode が正しくイメージファイルを保存できないのを修正。(Thanks to Paul Janssens)
  • RPM spec を修正し、man page をパッケージするようにした。
3.0.0 (2008.4.30)
  • QRencode_encodeInput() の引数が変更された。この関数を呼んでいるアプリケーションは修正する必要がある。
  • 構造的連接のサポートが追加された。(三原佑典氏よりパッチをご提供いただきました)
  • 構造的連接を利用するための "-S" オプションが qrencode と view_qrcode に追加された。
  • 一部の関数が、エラー発生時に errno を設定するようになった。
  • バグ修正。
2.0.0 (2008.1.24)
  • qrencode コマンドに "-i" オプションを追加。英大文字小文字の区別をせず、 すべて大文字として扱う。
  • qrencode コマンドで "-c" オプション使用時の英大文字・小文字を混ぜてのエンコードを改善。また、大文字小文字を標準で区別するようにした。
  • qrencode コマンドで全体を8ビットバイトモードでエンコードするオプションを "-8" に変更。
  • tests/view_qrcode が qrencode とほぼ同じオプションを受け付けるようになった。
  • マニュアルを添付。
  • コードの改良。
  • マスクの評価関数にバグがあったのを修正。(Philippe Delcroix)
1.0.2 (2007.3.24)
  • 小さなバグ修正。(南木 晴雄さんありがとうございました)
  • qrencode.h に 'extern "C"' が追加されたので、C++ のコードから include できるようになった。
1.0.1 (2006.12.27)
  • 強制的に 8ビットバイトモードにするオプションが追加された。
  • configure スクリプトが libpng のヘッダを正しいやり方で見付けるようになった。 Mac OS X + fink な環境でうまく configure されるようになった。
1.0.0 (2006.12.12)
  • Initial release.
福地 健太郎 (メールアドレスはこちら)