« 諏訪湖新作花火大会の映像をアップ | メイン | スタイルシート例文辞典にテキストシャドウを追加 »
2004年09月08日
Photoshop CS & 自動化
印刷関連ばかりだけど今度はPhotoshop CSでの自動化の依頼が来たのでスクリプトを作成し一応稼働中。一応というのは作って、まだ3日目ほどしか経過していないため、どんなトラブルがあるか未確認というのが大きいところ。
まあ、いろいろなデジカメで撮影したJPEG画像をJPEG, TIFF(グレー), EPSに変換してサーバーに保存するというものなので割と簡単。Linux + ImageMagicあたりとかでもできてしまいそうだけど、商用の印刷物の品質に耐えないといけないのでLinux上での画像処理は却下でPhotoshopという具合です。
MacOS X Panther + Photoshop CSの組み合わせだけなんですが、安定して動作させるために基本的にはUNIXベースでShell Script。あとはPhotoshop CSを制御するためのJavaScript、エラー発生時のトラブルを回避するAppleScript、起動のためのAppleScriptという組み合わせ。AppleScriptメインでやれば?という声もありそうだけど、AppleScriptは使える人が少ないため即時却下。UNIXのShell ScriptならばMacOS Xユーザー以外でもUNIXユーザーなら使えるでしょうし、JavaScriptならWebで使える人が多いでしょう。クライアントの気が変わってWindowsでやってくれ、と言われた場合にはAppleScriptでは作り直さないといけないけどJavaScriptはMac/Winどちらでも動く。
AppleScriptはどうしても使わないといけない場面のみですが、Photoshop CSでもtry, catchでは完全にエラーを回避できないことがありました。netatalkで何かしらの整合性がとれていないのか破損している場合にはエラーのアラートダイアログが表示されてしまいます。ローカルだと、同じファイルでもエラーが出ずにtry, catchで回避できるのですが。
で、以前のIllustratorの場合はQuickeysで処理していましたが、今回は試しに以下のようにして強制的にリターンキーを押した事にするようにしました。
tell application "System Events"
keystroke return
end tell
Photoshopは、これで多分大丈夫でしょう。Illustratorの場合はPhotoshopと比べて表示されるダイアログがエラー以外にも、いろいろあったため面倒でした。
Photoshop以外にもInDesign CS、AfterEffects 6.5でも同様に自動化の処理ができます。AfterEffects 6.5だとソケット通信を利用してRSSとかでデータをもってきて概略をテロップで流すなんて映像も自動的に作れるんじゃないかと思います。
投稿者 openspc : 2004年09月08日 04:23
トラックバック
このエントリーのトラックバックURL:
http://www.openspc2.org/blog/mt-tb.cgi/2