ユーザーがドキュメント上で選択しているオブジェクトは、以下のようにして取得することができます。

var selObj= app.activeDocument.selection; //最前面のドキュメントで選択されているオブジェクト

 

これは配列として受け取るので、さらにこの中から目的のオブジェクトを選ぶことになります(参照:オブジェクトの種類を取得する)。

var selObj= app.activeDocument.selection; //最前面のドキュメントで選択されているオブジェクト
if (selObj.length !== 0) {
    var cnt; //カウンタ
    var targetObjs=[]; //オブジェクト収納配列
    //PageItemの数だけ繰り返し、テキストフレームだけを配列に加える
    for (cnt=0; cnt <selObj.length; cnt++) {
        if ( selObj[ cnt ].constructor.name=='TextFrame' ) {
            targetObjs.push(selObj[ cnt ]);
        }
    }
}
$.writeln (targetObjs.length); //テキストフレームの数

 

なお、上記の例ではapp.activeDocument.selectionと明示的に最前面のドキュメントを指定していますが、これをapp.selectionとしても、結果的に最前面のドキュメントで選択されているオブジェクトを取得することになります。

 

 

Joomla templates by a4joomla