仕事でわけあってEPSファイルを解析していた。EPSは入れ子構造になっているうえに、本体データは独自のエンコードが施されているため、厳密に構造解析を行うとしたら「そのデータを作成したアプリケーション」かその他の専用ツールに任せるしかない。
……めぐりめぐって、どのアプリケーションで作成したEPSファイルであるかを判別するということになった。
普通にEPSのヘッダを解析して分かるパターンもあれば、DOSフォーマットのEPSであるため先頭にプレビューデータを含んでいるものもある。EPSのヘッダはプレビューデータのうしろに位置しているわけで、その部分を検出するために、先頭部分を直接解析してどの程度のギャップがあるのかを検出することにした。
すべてAppleScriptで記述し、EPSヘッダの検出からEPS Creator部の情報抽出まで行い、さらに指定フォルダ階層以下にあるすべてのEPSを総当たりして、Creatorごとに集計を行わせてみた。
意外とバージョン表記にサブバージョンの情報が付いているので驚いた。PowerMac G5上だとさくっとこんな重そうな処理が終わってしまうのでありがたい。