- ベストアンサー
Photoshop JavaScript で複数のグループを操作する
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
私も是非利用したい機能なので作ってみました(Windows版CS2)。ReferenceManual で見つからない場合には、ScriptListener.8li を利用すると解決できる場合があります。 if( app.documents.length ) { var showType = true ; ShowAllSets( !showType ) ; // 全レイヤーセットを非表示(または表示) ShowSelectedSets( showType ) ; // 選択された全レイヤーセットのみを表示(または非表示) } function ShowAllSets( visible ) { var docRef = app.activeDocument ; var setsRef = docRef.layerSets ; var count = setsRef.length ; for( var j = 0 ; j < count ; ++j ) { setsRef[j].visible = visible ; } } function ShowSelectedSets( visible ) { // 以下 ScriptListener.8li に吐き出させたコードを編集 var ref = new ActionReference() ; var classtype = charIDToTypeID( "Lyr " ) ; var enumType = charIDToTypeID( "Ordn" ) ; var value = charIDToTypeID( "Trgt" ) ; ref.putEnumerated( classtype, enumType, value ) ; var descriptor = new ActionDescriptor() ; var key = charIDToTypeID( "null" ) ; descriptor.putReference( key, ref ) ; var event; if(visible) { event = charIDToTypeID( "Shw " ) ; } else { event = charIDToTypeID( "Hd " ) ; } executeAction( event, descriptor, DialogModes.NO ) ; }
お礼
回答、ありがとうございます。 スクリプトを活用させていただきます。 ScriptListenerも試してみました。選択レイヤーを表示、非表示 させた場合にはログが吐かれるのを確認しましたのですが、 グループを開いたり閉じたりしてもログは出力されないの ですね。こちらのスクリプトは現状では無理そうなのが分かりました。