アスペクト比に応じてファイル処理を行う

DVDなどのタイトル制作時には縦横比(アスペクト比)を調整して作成することがあります。この縦横比を正方形ピクセルに戻したり、特定の値に指定したい場合があります。以下のスクリプトは開いている全てのドキュメントの縦横比を1:1にします。

for (i=0; i<documents.length; i++)
{
activeDocument = documents[i];
documents[i].pixelAspectRatio = 1;
}

縦横比を設定するには以下の行の数字の1を変更します。

documents[i].pixelAspectRatio = 1;

開いているファイルでなく、特定のフォルダにあるPSDファイルの縦横比を1:1にして保存することもできます。以下のスクリプトはフォルダを選択したら、その中にあるPSDファイルの縦横比を1:1にして保存します。

folderObj = Folder.selectDialog("フォルダを選択してください");
if (folderObj)
{
fileList = folderObj.getFiles("*.psd");
for (i=0; i<fileList.length; i++)
{
fileObj = new File(fileList[i].fsName);
open(fileObj);
activeDocument.pixelAspectRatio = 1;
activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}
}

保存する縦横比を設定するには以下の行の数字の1を変更します。

activeDocument.pixelAspectRatio = 1;

ここまでは、特にスクリプトを使用しなくてもアクションでも何とかなります。逆に保存するのではなく、特定の縦横比だったら開くこともできます。以下のサンプルは縦横比が0.9でない場合にドキュメントを開きます。

folderObj = Folder.selectDialog("フォルダを選択してください");
if (folderObj)
{
fileList = folderObj.getFiles("*.psd");
for (i=0; i<fileList.length; i++)
{
fileObj = new File(fileList[i].fsName);
open(fileObj);
n = activeDocument.pixelAspectRatio;
if (n != 0.9)
{
activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}
}
}

縦横比が1の場合に開きたいのであれば

if (n != 0.9)

if (n == 1)

にします。
フォルダを指定した場合には、そのフォルダ内に入っているファイルしか処理できません。MacOS Xではスポットライトを利用するとフォルダが異なっているPSDファイルを探し出す事ができます。スポットライトとオートメーターとJavaScriptを組み合わせると、異なるフォルダでも同じ処理を行わせることができます。次回はスポットライトとオートメーター、そしてJavaScriptを組み合わせて処理を行ってみます。




[サンプルをダウンロード]