主にInDesignによる新聞組版Tips中心です。Mac使いですが業務はWin多め。Win DTP Tipsを増やしたい

ExifTool.exeのDTP活用(Illustratorバージョン情報)

DTP Advent Calender 2019の7日目の記事です。

Illustratorドキュメントの正確なバージョン情報を見つけ出そうシリーズ。

 

ExifToolは、様々なドキュメントのXMP情報を取得・操作するコマンドラインツールです。

性質上カメラマンによく知られており、GUI(Win)版もありますが、そちらは主に書き換えに特化したツールの様。

 

ExifTool

PostScriptタグ(EPS)PDFタグ(AI)

参考:

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

Illustratorファイルのバージョン情報を整理してみる(ものかの)

ExifTool.exeの簡単な使い方:表示編(穀風)

これね、調べてもメタ情報の書き換えとか日付管理ばかり出てきて、DTP業務向けの情報って滅多に見つからないの。MacUnixマンばかりでWinの使い方は滅多に見ない。

基本Perlを利用するコマンドラインツールなため、Windowsでは恐らくPerl環境を構築しないと、コマンドラインからの実行ができません(多分)。なので誰にでも出来る方法として、解凍されるスタンドアロン版を複製・リネームして、欲しい情報を抽出します。

Adobe Bridgeメタ情報で見れるのは「最後に開いたアプリバージョン」(保存バージョンではない)

Illustrator v10以前は非対応な部分がある

この辺はとにかく前出、ものかのさんリンクを参照下さい。

※exe実行時、アンチウイルスソフトに引っ掛かる事がある

 

Windows Executable:exiftoolをダウンロード。

解凍後、好きな場所に置く。exiftool.exeを複製し、リネーム

f:id:chocomarine:20191207173600j:plain

 

exiftool(-k).exeイラレドキュメントをドロップするとコマンドプロンプトが開き、全てのXMP情報を表示します。

f:id:chocomarine:20191207173938j:plain

Creatorは保存バージョン、Creator Toolは「最後に開いたバージョン」

f:id:chocomarine:20191207174457j:plain

コマンドプロンプトUTF-8出力指定をしていない為か、日本語が文字化けします


ちょっと目当てのコマンドを探しづらい。ので、より可視化できる(-k -a -u -g1 -w txt).exeの使い方。

(-k -a -u -g1 -w txt)は上記XMP情報を、オリジナルと同じディレクトリに*.txtで出力します。

 

  1. リネームしたexiftool(-k -a -u -g1 -w txt).exeに、Illustratorドキュメントをドロップ。
  2. コマンドプロンプトが開き、RETURNキーを要求されます(return)。
  3. 元ドキュメントと同じ階層に*.txtができます。

    f:id:chocomarine:20191207175159j:plain

    Illustratorドキュメントと同じ名前になります


  4. 正規表現でハイライトカラーを設定できるテキストエディタで開きます。筆者は秀丸エディタを使います。

    f:id:chocomarine:20191211165858j:plain

    (メニュー)ファイルタイプ別の設定→ デザイン→ 強調表示→ ユーザー定義→ 追加
  5. ユーザー定義→ (新規)追加...

    f:id:chocomarine:20191211170153j:plain

    (新規)追加→ 設定を記述
  6. プロパティで正規表現、ハイライト設定を作って追加していく。
    全て設定できたら、保存しておきましょう。

    f:id:chocomarine:20191207175711j:plain

    (作業の種別にハイライト設定を作ると便利)
  7. 見たいポイントだけをカラー表示できます
    f:id:chocomarine:20191207180042j:plainf:id:chocomarine:20191207180134j:plain

    f:id:chocomarine:20191211170534j:plain

    f:id:chocomarine:20191207180449j:plain

    (日本語は部分的に文字化け)

見に行くタグの違いで、epsとAIで表示される内容は微妙に違います。

 

(12.11追記)

以下は、以前流星光輝さんが個人的に書いて下さったvbsドロップレットです。

手順は、1)以下のコードをShift-JISテキスト保存 2)拡張子をvbsに 3)exiftool.exe本体をshift + 右クリック「パスをコピー」 4)コード内[exiftool.exeのフルパス]に差し替える 

f:id:chocomarine:20191211113010j:plain

ドキュメント名は自由(拡張子をvbsに)

5)ai or EPSをドロップして待つ

f:id:chocomarine:20191211113206j:plain

HistorySoftwareAgentを返します

各種コマンドはものかのさんリンクのラストにあります。(冒頭のexiftool を抜く)

  • 例はHistorySoftwareAgent(ドキュメントが通ってきたAIアプリバージョン)
  • パス前後のブラケット[ ]は不要
  • コピーしてきた両端のダブルコーテーションは不要
  • フルパスとコマンドは半角スペースで区切る
  • コマンドの後ろとダブルコーテーション(閉じ)の間は半角スペースが必要
  • ここで得られるEPSのCreatorは、恐らく2番目のみ
  • ai・epsは、フルパスにスペースを含まない場所に置いて下さい(vbsの仕様上)
  • PCのユーザー名にスペースがある場合、多分記述に少し工夫が必要

'-----------------以下プログラム----------------------

Set FSO=CreateObject("Scripting.FileSystemObject")
Set args = WScript.Arguments
For Each pt In args

If fso.FolderExists(pt) Then If fso.FolderExists(pt) Then

'フォルダが投げ込まれた場合

msgbox "フォルダドロップには対応していません"

elseIf fso.FileExists(pt) Then

'ファイルが投げ込まれた場合

msgbox CMDcommandResultGet("[exiftool.exeのフルパス] -T -HistorySoftwareAgent " & pt) 

else

'それ以外

'ファイルパスが無効です。

End if
Next

Function CMDcommandResultGet(strCommand)
Dim WshShell
Dim oExec
Set WshShell = CreateObject("WScript.Shell")
Set oExec = WshShell.Exec("%ComSpec% /c " & strCommand) 'Exec メソッド
If Not oExec.StdOut.AtEndOfStream Then 'StdOut プロパティ'AtEndOfStream プロパティ
CMDcommandResultGet = oExec.StdOut.ReadAll 'ReadAll メソッド
Exit Function
End If
If Not oExec.stderr.AtEndOfStream Then 'stderr プロパティ'AtEndOfStream プロパティ
CMDcommandResultGet = oExec.stderr.ReadAll 'ReadAll メソッド
Exit Function
End If
End Function

'------------------ここまで---------------------

Win7、Win10で動作確認済み。

に、2年も寝かしてごめんなさい流星号()

※コード参照  

Mac版の方は、ExifToolをインストール後ものかのさんのリンクを頼りに、ターミナルに目的のコマンドを入力、末尾に半角スペース、その後ドキュメントをターミナルウインドウにドロップしてreturn実行して下さい。(雑な説明)
AI8_CreatorVersionが見られるように、ExifTool本体の書き換えも忘れずに。

f:id:chocomarine:20191216175838j:plain

ターミナル(Mac)からコマンド入力。自由度が高い

 

メモ(スティッキーズ)にコマンドを貼り付けておくと便利。

f:id:chocomarine:20191211161045j:plain

(末尾に半角スペースがあります)

 これらXMP情報は、Adobe側の仕様変更により今後も変わる可能性があります。

…どなたかが暫く前に「今後はバイナリでなければ正確な情報を得られないのかも」とtweetで呟いていた様な、気がしないでもないんですが、正確に覚えていません(ダメじゃん)←

他「上書き保存では更新されない部分」など細かな注意事項は、こちらのものかのさんリンクを参照(こればっか)。

別ページDTPOAの項も、併せてご覧下さい。

epsではCreatorが二度出てきますが、ものかのさんによるとPostScriptのCreatorには2種類(1、2と)が存在するそう。
またデフォルトでは、新規作成したバージョン=AI8_CreatorVersionを見ることができません。Mac版はexiftool本体を書き換えてこれを表示させる事が可能になりますが、Winでは現状、History Software Agentを見るしかないようです。

しかしこの来歴、結構情報が消失します(とほほ)。

 

因みにGlee Aiに拡張子を関連付けすると、イラレは全て下記メッセージから開くようになります。(Mac ONLY)

 

f:id:chocomarine:20191216174718j:plain

右上の「詳細情報」をクリックすると

f:id:chocomarine:20191216174752j:plain

XMP情報が、正確な意味と共に表示されます

・・・・要するに、

ものかのさん最高!!

って話なんですけどね
  

 

最後に、

フルパスやコンピュータユーザー名にスペースを突っ込む輩は、死に絶えろ()