フォトショップの自動化


 はてなの質問で、「なでしこ」でPhotoshopの自動化をやりたいという質問があったような・・・

 私はPhotoshopを持っていないため、動作確認できませんが、Elements3.0ならありますので、とりあえず作ってみました。

# フォトショ自動化
母艦について
  W=320。H=280。タイトルは「フォトショ」
「①フォトショップを起動します」と表示。
PS起動ボタンとはボタン。
PS起動ボタンをクリックした時は
    「C:\Program Files\Adobe\Photoshop Elements 3.0\」&
    「PhotoshopElementsEditor.exe」を起動。
「②処理するファイルを選択します」と表示。
選択ボタンとはボタン。
選択ボタンをクリックした時は~ファイル選択処理。
「③処理を実行します」と表示。
実行ボタンとはボタン。
実行ボタンをクリックした時は~実行処理。
「④フォトショップを終了します」と表示
終了ボタンとはボタン。
終了ボタンをクリックした時は~終了処理。
ファイルリストは空。画質は12。変更サイズは320。
●ファイル選択処理
  ファイル選択。
  もしそれが空ならば戻る。
  ファイルリストはそれ。
  ファイルリストを言う
●実行処理
  もしファイルリストが空ならば戻る。
  「写真編集モード*」を窓ハンドル検索してフォトショへ代入。
  (ファイルリストの要素数)回
    # ファイルを開く
    フォトショへ『^o』を窓ハンドルキー送信。1秒待つ。
    対象ファイルはファイルリスト[回数-1]。
    「開く」へ『%n』をキー送信。
    「開く」へ対象ファイルをキー文字送信。
    「開く」へ『{ENTER}』をキー送信。
    # 画像解像度
    フォトショへ『%iri』を窓ハンドルキー送信。
    # 初期化
    「画像解像度」へ『+{TAB 2}』をキー送信。
    #幅を320に
    「画像解像度」へ『%w』をキー送信。
    「画像解像度」へ変更サイズをキー送信。
    「画像解像度」へ『{ENTER}』をキー送信。
    #名前を付けて保存
    フォトショへ『+^s』を窓ハンドルキー送信。1秒待つ。
    「別名で保存」へ『%n』をキー送信。
    「別名で保存」へ「{デスクトップ}テスト{回数}.jpg」をキー送信。
    「別名で保存」へ『{ENTER}』をキー送信。
    # 画質は最高
    「JPEG オプション」へ『%Q』をキー送信。
    「JPEG オプション」へ画質をキー送信。
    「JPEG オプション」へ『{ENTER}』をキー送信。
●終了処理
  「写真編集モード*」を窓ハンドル検索してフォトショへ代入。
  フォトショへ『%{F4}』を窓ハンドルキー送信。

 一気に処理してしまうのではなく、段階毎にユーザーが介入した方が分かりやすいと思いましたので、それぞれのボタンを作成しました。

 まず、Photoshopを起動するボタンです。Photoshopの起動にはものすごく時間が掛かりますので、「○○秒待つ」という命令では実用的ではありません。
 ユーザーが起動を確認してから次の処理へ移ります。

 ファイルを選択するときは、画像ファイルだけを選択できるような工夫が必要かも知れません。

 実際の処理は、画像の幅を320ピクセルに統一し、縦横比率を維持したままリサイズします。そして「テスト○○.jpg」というファイル名でデスクトップに保存します。画質は最高にしてあります。

 ファイル名にも工夫が必要ですね。日付と時間の組合せにしたり、別フォルダにしたり・・・

 処理が終わると、Photoshopを終了します。
 ただ単純に終了しているだけですので、保存確認のダイアログがでるかもしれません。

 結局、キー送信を駆使しているだけですので、たいしたプログラムではありませんが、Photoshopを操作することもできそうですね。
最終更新:2009年09月11日 15:20