LoginSignup
4
2

More than 5 years have passed since last update.

ExifToolでIllustratorファイルのバージョンを調べる方法

Last updated at Posted at 2015-02-11

ExifTool は Illustrator ファイルのメタデータ抽出に対応していますが、デフォルトのままでは「保存バージョン」「作成バージョン」ともに必要な情報を取得できません。これをゲットできるようにする方法です。

ExifTool のダウンロード

http://www.sno.phy.queensu.ca/~phil/exiftool/
インストーラーではなく、トップページ冒頭のリンクからダウンロードします。必要なものは「exiftool」と「lib」です。この 2 つが同階層にあれば exiftool は動作します。

PostScript.pm を編集する

lib > Image > ExifTool > PostScript.pm をプレーンテキストエディタで開いて編集します。この記述を変更・追加することで、必要な情報をゲットできるようにします。

Creator(保存バージョンの取得)

Creator タグで「保存バージョン」を取得します。デフォルトですでに取得可能なのですが、

PostScript.pm
Creator     => { Priority => 0, Writable => 'string' },

Illustratorのepsファイルは、v9以降からCreatorの記述が2箇所に出現し、保存バージョンは1番目ではなく2番目であることはよく知られています。デフォルトでは1番目の方を返してくるので、正確な保存バージョンを取得できません。そこで、Priority => 01に書きかえます。

PostScript.pm
Creator     => { Priority => 1, Writable => 'string' },

こうすることで、2箇所あった場合に2番目の方を返すようになります。

追記
検証の結果「epsファイルの2箇所にあるCreatorは2番目が保存バージョン」は誤りで、「1番目=作成バージョン、2番目=互換バージョン」と捉えた方が一貫性を持って混乱なく把握できることが分かりました。

なお、aiファイルのCreatorは1箇所のみで、互換バージョンです。これをそのまま保存バージョンと見なすのも不正確になります。

AI8_CreatorVersion(作成バージョンの取得)

本当の作成バージョンが AI8_CreatorVersion タグにあることは、これもよく知られています。ExifTool はこのタグをデフォルトでは取得しません。そこで追記します。

PostScript.pm
Creator     => { Priority => 1, Writable => 'string' },
AI8_CreatorVersion     => { Priority => 0 },

これで AI8_CreatorVersion を返してくるようになります。

exiftool コマンドの使い方

  • exiftool -s       タグと値の一覧を取得できます
  • exiftool -T -Creator  Creator の値を取得できます
  • exiftool -T -AI8_CreatorVersion  AI8_CreatorVersion の値を取得できます

タグを複数並べると、一度で取得できます。値はタブ区切りで返ってきます。

  • exiftool -T -FileType -CreatorTool -Creator -AI8_CreatorVersion
4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2