libexif -------
libexif は、EXIF データの解析、編集、保存を行うためのライブラリです。コマンドラインユーティリティや GUI プログラムにおける多くの重複した実装を置き換えることを目的としています。
libexif は EXIF データの解析、編集、保存をサポートしています。さらに、gettext による国際化対応も備えています。EXIF 標準 2.1(および 2.2 の大部分)で記述されているすべての EXIF タグをサポートしています。また、Canon、Casio、Epson、Fuji、Nikon、Olympus、Pentax、Sanyo のカメラからの多くのメーカーノートもサポートしています。
libexif はプレーンな C で書かれており、追加のライブラリを必要としません。利用可能であれば、GNU gettext が言語翻訳に使用されます。
libexif は一部のメーカーノートのみしか処理できず、それらも十分には処理できません。さらなる作業が必要です。libmnote は libexif に統合されたため、不要になりました。
libexif API は doxygen を使ってドキュメント化されており、結果は http://libexif.sourceforge.net/api/ で公開されています。
test ディレクトリ内の簡易テストプログラムは、有効な EXIF データをゼロから作成する方法、EXIF データを保存する方法、メモリ上のデータから EXIF データをロードする方法を示しています。また、contrib/examples/ ディレクトリにはいくつかの簡単なサンプルプログラムがあります。libexif の使い方についてご質問があれば、[email protected] までお気軽にお問い合わせください。
独自のパッケージに libexif をリンクするには、pkgconfig ユーティリティを使用することをお勧めします (http://www.freedesktop.org/wiki/Software/pkg-config/ を参照)。便利なことに、libexif は libexif-uninstalled.pc を提供し、libexif.pc をインストールします。
現在、私が知っている libexif のフロントエンドは以下のとおりです:
プログラムを libexif に移行したり、EXIF サポートを追加したい場合は、作者にご連絡ください。
私が知っている、libexif を使用している、または影響を受けたライブラリは以下のとおりです:
libexif をビルドする方法は環境に大きく依存します。ソースの tar ボールからビルドする場合、通常は以下のコマンドを実行します。
./configure make sudo make install
CVS からソースをビルドする場合、以下のような手順が必要です。
gettextize mv po/Makevars.template po/Makevars aclocal -I auto-m4 -I m4m autoheader libtoolize --force automake --add-missing autoconf ./configure make
または、おそらく次のように簡単にできます:
autoreconf -i ./configure make
標準的な引数の他に、configure は libexif 固有のいくつかのオプションを受け付けます:
--disable-docs ドキュメントの生成を無効にする --enable-internal-docs Doxygen が利用可能な場合、内部コードドキュメントをビルドする --enable-ship-binaries 'make dist' に Windows DLL を含める
特定の専門アプリケーションでは、configure 時に CPPFLAGS 環境変数に以下のマクロの一方または両方を設定することで、libexif バイナリのサイズを削減できます。各マクロはバイナリから特定の種類のテキスト文字列や定数を除去します。特定の既知の EXIF タグにのみアクセスし、そのデータの意味を事前に把握しているアプリケーションはこれらの文字列を必要とせず、それらを削除することでかなりの容量を節約できます。
-DNO_VERBOSE_TAG_STRINGS EXIF タグの名前と説明、デバッグメッセージ、必須 EXIF フィールド (自動タグ修正を無効化) -DNO_VERBOSE_TAG_DATA 列挙型タグデータ内容の名前
libexif の翻訳は、ボランティアが個々に、libexif プロジェクトと直接、または Translation Project http://translationproject.org/domain/libexif.html と Launchpad https://translations.edge.launchpad.net/ubuntu/precise/+source/libexif/+pots/libexif-12 の2つの翻訳調整サイトのいずれかを通じて行っています。
Translation Project が調整する言語の翻訳の更新は、必ずそのウェブサイトを通じて行う必要があります。それ以外の言語は、Launchpad (推奨) または libexif 開発者メーリングリストに直接更新を送信することで更新できます。現時点では、以下の言語は Translation Project を通じて更新する必要があります: cs da de es fr it ja nl pl sk sv uk vi
libexif を新しい言語に翻訳することに興味がある場合は、上記の翻訳グループのいずれかに参加し、彼らが構築したシステムを活用することをお勧めします。Translation Project では libexif の翻訳に関する免責事項は不要です。翻訳を行うことで、libexif の他の部分と同じライセンス条件 (LGPL) で提供することに暗黙的に同意したものとみなされます。
libexif は、元々 Curtis Galloway [email protected] によって書かれました。当初の設計では編集と保存がサポートされていなかったため、Lutz Mueller [email protected] が libexif を一から書き直しました。それ以来、さらに多くの人々が libexif に貢献しています。
EXIF の詳細情報に興味がある場合、以下のリンクを参照してください。