Photoshop Scriptコード
Scripting Listenerで取得したコードやScriptUIコードを載せています。
選択範囲の有無を判定する
コード
alert(isSelection() ? '有り' : '無し');
/**
* 選択範囲の有無を判定する
*/
function isSelection() {
try {
// 選択範囲を360度回転
var changeAngle = 360;
var desc = new ActionDescriptor();
var ref = new ActionReference();
ref.putProperty(charIDToTypeID('Chnl'), charIDToTypeID('fsel'));
desc.putReference(charIDToTypeID('null'), ref);
desc.putUnitDouble(charIDToTypeID('Angl'), charIDToTypeID('#Ang'), changeAngle);
executeAction(charIDToTypeID('Trnf'), desc, DialogModes.NO);
}
catch (e) {
return false;
}
return true;
}
補足
「OpenSpace」さんの「Photoshop CS4自動化作戦」にも「選択範囲があるかどうか調べる」がありますが(CS1〜4共通)、1px × 1pxのドキュメントに対しては使えなかったため、選択範囲に対する処理を変更したコードです。
確認バージョン
CS2, CS6