Photoshop CSにあると便利(?)な小物スクリプトです。たまには短くまとめてみました(?)
(1)開いているドキュメントを、全て保存せずに閉じる
PDFとかEPSファイルを開いて確認したいだけなのに、閉じる時には「保存しますか?」とダイアログが表示されます。数枚なら、まだしも10枚以上になるとかえって苦痛です。そんな時には以下のスクリプトが利き腕によく効きます。
n = app.documents.length;
for (i=0; i<n; i++)
{
activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}
(2)開いているドキュメントを、全て印刷する
開いているドキュメントを全部印刷したい場合があります。こんな時にはファイルメニューから印刷を選択したり、キーボードショートカットを使うと手が疲れます。以下のスクリプトは指だけが疲れるくらいで済むものです。
docObj = app.documents;
for (i=0; i<docObj.length; i++)
{
app.activeDocument = docObj[i];
docObj[i].print(PrintEncoding.JPEG, SourceSpaceType.DOCUMENT, Intent.ABSOLUTECOLORIMETRIC);
}
(3)ランダムにペースト
適当に画像を散乱させたい場合はペーストしてマウスでつかんで移動させて・・・という作業になります。そんな作業を100回もやっていたら大変です。そんな時は以下のスクリプト。あらかじめランダムにペーストしたい画像をコピーしておきましょう。実行するとペーストされレイヤーとして生成されるので、後から気に入るように移動させてやることができます。
n = 20; // ランダムにペーストする回数
w = 320; // ランダムにペーストする範囲(横幅)
h = 240; // ランダムにペーストする範囲(縦幅)
for (i=0; i<n; i++)
{
x = Math.floor(Math.random() * w) - w / 2;
y = Math.floor(Math.random() * h) - h / 2;
activeDocument.paste();
activeDocument.activeLayer.translate(x,y);
}
(4)ランチャーもどき
MacOS Xだとドックにアプリや書類などを入れておくことができます。ワンクリックで起動できるし一見すると便利なのですが、使うソフトなどが増えるとアイコンが小さくなって、やりにくくなります。ユーティリティを使うのも1つの手ですが、Photoshopでもランチャーもどきが可能です。以下に、それぞれ個別のアプリの起動スクリプトを用意しました。基本的には1行目の"〜"の間に起動したいアプリケーションのパスを書くだけです。アプリケーションのパスが分からない場合には、アプリケーションフォルダにあるユーティリティフォルダ内のターミナルを起動します。そのターミナルに起動させたいアプリケーションをドラッグドロップするとパスが表示されます。そのパスをコピーし、半角空白部分の「 」のを削除すればできあがりです。
●Adobe Illustrator CSを起動
fileObj = new File("/Applications/Adobe Illustrator CS/Illustrator CS.app");
fileObj.execute();
●Adobe InDesign CSを起動
fileObj = new File("/Applications/Adobe InDesign CS/InDesign CS_J.app");
fileObj.execute();
●Adobe GoLive CSを起動
fileObj = new File("/Applications/Adobe GoLive CS_JPN/Adobe GoLive CS.app");
fileObj.execute();
●Safariを起動
fileObj = new File("/Applications/Safari.app");
fileObj.execute();
Photoshop CSはGUI(グラフィカルユーザーインターフェース)も作成できるので、(アイコンとかは表示できませんが)ボタン一発で特定のアプリを起動したりすることができます。