2012年7月24日火曜日

JPG のメタデータを表示させる VB アプリ お披露目

写真の jpg File の中には実に多くの文字情報が埋め込まれています。
EXIF とか IPTC とかの単語は聞かれた事があるでしょう?
Windows の Explorer でプロパティ画面を開くと詳細 Tab の中にその一部が表示されます。
皆さんがお使いの写真用のソフトでも色々と表示されますよね。
 ... でも、それで全部でしょうか?


実は、ずいぶん昔ですが、画像編集ソフトの GIMP を使っていて疑問に思ったことがあります。
jpg 形式を指定して保存する時にコメントを記入できるのですが、これが他では表示されないのです。 ... どうして?

この疑問は、後日、別件で必要を迫られ自作した Visual Basic のアプリが答えを出しました。

写真関係ではあまり使われない(?) Exif  の UserComment (0x9286) にありました。



前書きはこの位にして、出来の悪い我子のご紹介を ... 。


jpg File のメタデータの EXIF 項目と XMP 項目を取得します。
ファイル内の Marker の並び方から、 JPG や EXIF の仕様に沿っているか判断します。
XMP については撮影直後のファイルには(一般的には)含まれません。
上図は GIMP で作成した jpg File を表示したものなのでXMP は含まれていません。
IPTC タグが挿入されたものはこれが含まれます。
Explorer 等でタグ付けをしたものもこれが含まれます。


ファイル構造の例です。




XMP の例です。




現在は表示のみの機能ですし、Exif  の MakerNote 内はまだ手付かずです。
自分で撮影・加工もしくはスキャンしたものが対象ですので、ファイルの偽装もチェックしていません。
開発当初は、変更機能も盛り込む予定でしたが、Visual Basic (.Netframework) のクラスでは、ファイル構造を改訂してしまう問題が発覚し、実装をやめました。

方針変更して、編集は全てバイナリ操作として、今、別プロジェクトで作り掛け中断しています。
もう少し(ファイルへの書戻が残)なのですが、こう暑いとやる気が ... 。
よーし作るぞー ... と気合を入れないと、壊しちゃうのがオチなので ... 。

別プロジェクトは、この子のように試作品ではないので、バイナリ表示を盛り込む予定は無く、
この子はもっぱらバイナリチェック用で働いてくれていました。


[2012/08/13] ラベル:写真を追加

0 件のコメント:

コメントを投稿