ExifGet - Exif情報の取得

JPEG画像からExif情報を取得します。
ファイルパスが指定されている場合は、指定されたパスにあるファイルからExif情報を取得します。
ファイルパスが指定されていない場合は、入力ストリームからExif情報を取得します。
サポートされている画像フォーマットはJPEGのみです。

■ストリーム情報

入力フォーマットBinary
接続数1
説明 JPEG形式のイメージデータを入力できます。
ファイルパスが指定されている場合は入力ストリームは使用せず、無視します。
出力フォーマットRecord
説明 出力ストリームのフィールド定義に従って、画像ファイルもしくは入力ストリームのイメージデータを解析し、Exif情報をレコード形式で出力します。
フィールド名は取得したいExif情報を「ディレクトリ名:タグ名」の形式で指定します。 ディレクトリ名を省略した場合、すべてのディレクトリの中からタグ名が最初に一致した情報を取得します。 また、タグ名には「0x0131」のように16進形式でタグNo.を指定することもできます。 もしも取得できるディレクトリ名やタグ名が分からない場合には、下記トピック「Exif情報について」を参照してください。
指定したExif情報が取得できなかったフィールドには、データ型がString型の場合は空文字列が出力されます。Binary型の場合はサイズが0のバイト列が出力されます。Boolean型の場合はfalseが出力されます。それ以外のデータ型の場合はnullが出力されます。
出力ストリームにはあらかじめ以下のフィールドが定義されています。
FilePathというフィールド名を指定した場合には、Exif情報を取得した画像ファイルのパスが出力されます。入力ストリームのイメージデータからExif情報を取得した場合は空文字列が出力されます。
フィールド名データ型説明
FilePathString画像ファイルのパス
Image DescriptionString画像についての説明
MakeStringカメラのメーカー名
ModelStringカメラの機種名
OrientationString画像の向き
XResolutionStringX方向の分解能
YResolutionStringY方向の分解能
ResolutionUnitStringX Resolution/Y Resolutionの単位
DateTimeDateTime最終更新日時
ExposureTimeString露光時間
FNumberStringレンズのF値
ExifVersionStringExif形式のバージョン
DateTimeOriginalDateTimeオリジナル画像が撮影された日時
DateTimeDigitizedDateTime画像がデジタル化された日時
ExifImageWidthString画像の幅
ExifImageHeightString画像の高さ
GPS Latitude RefString緯度の南北
GPS LatitudeString緯度
GPS Longitude RefString経度の東西
GPS LongitudeString経度
GPS Altitude RefString高度の基準
GPS AltitudeString高度
GPS Time-StampStringGPSの時間(原子時計)

■コンポーネントプロパティ

名前プロパティ型マッピング説明
ファイルパスremoteFile入力&出力 Exif情報をファイルから取得する場合に、画像ファイルのパスを指定します。
UNIXシステムの場合は、パス名は接頭辞が "/" の場合に絶対パスとみなします。Windowsシステムの場合は、パス名は接頭辞がドライブ指示子のあとに "\\" が続く場合、または接頭辞が "\\" の場合に絶対パスとみなします。
相対パスで指定した場合は、相対パスの起点で指定したホームからの相対になります。
「**」と「*」と「?」の3つのワイルドカードが使用できます。「**」は0個以上の任意のパスセグメントに、「*」は0個以上の任意の文字に、「?」は任意の1文字にマッチします。
フォルダーが指定された場合は、そのフォルダー下のすべてのファイルからExif情報を取得します。
例:
directory/image.jpg
C:\directory\image.jpg
\\server\share\image.jpg
**/*.jpg - 相対パスの起点以下のすべての「*.jpg」ファイル
C:\directory\*.jpg - C:\directory直下の「*.jpg」ファイル
C:\directory - C:\directory下のすべてのファイル
ファイルパスの詳細設定group- ファイルパスの詳細設定を行うプロパティ群です。
相対パスの起点pathResolver- 相対パス指定の場合にベースフォルダーを指定します。
プロジェクトフォルダー [Relative]
プロジェクトファイルと同じフォルダーを起点にします。
ホームフォルダー [ProjectOwner]
ユーザーのホームフォルダーを起点にします。
実行ユーザーのホームフォルダー [ExecuteUser]
実行ユーザーのホームフォルダーを起点にします。
絶対パスを許可boolean- 絶対パスを許可するかどうか選択します。
「..」を許可boolean- 上のフォルダへ移動する記述に「..」を許可するかどうか選択します。
ループを開始loopProcess-ファイルパスにワイルドカードが指定され、複数のファイルが指定にマッチする場合にExif情報をまとめて出力するか1レコードずつループして出力するかを選択します。
はい [true] - ループの起点となって1レコードずつストリームに出力します。
いいえ [false] - すべてのレコードをストリームに出力します。

■ループ処理

ファイルパスにマッチするファイルが複数有り、ループを開始が「はい」の場合、このコンポーネントがループの起点となってExif情報のレコードを1つずつ出力します。

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

タイプパラメーターエラー処理フロー
へのストリーム
エラー
コード
説明
ファイルが存在しない なし コンポーネントの入力ストリーム2ファイルパスで指定したファイルが見つからなかった場合
汎用 なし コンポーネントの入力ストリーム1ファイルパスで指定したファイルパスが不正だった場合
3ファイルパスが指定されていない場合に、入力ストリームがBinary型でなかった場合
4入力ストリームのサイズが0だった場合
5イメージデータがサポート対象以外のフォーマットだった場合、または、Exif情報の解析に失敗した場合
6フィールドの値の型変換に失敗した場合
9ファイルパスの指定が誤っている場合や、相対パスの起点が「実行ユーザーのホームフォルダー」の場合に、実行ユーザーが存在しないため相対パスが解決できなかった場合

■Exif情報について

Exif情報としてどのような内容が取得できるか分からない場合には、フローの実行モードを「デバッグ」にして実行してください。取得可能なすべてのExif情報が以下の形式でログに出力されます。

[画像ファイルのパス] [ディレクトリ名] 16進形式のタグNo., タグ名 = Exif情報の内容

(例) [c:/temp/a.jpg] [Exif Thumbnail] 0x011a, X Resolution = 72 dots per inch