Photoshopのスクリプトを調べていたらScriptListenerというのがあり、アクションのログをJavaScriptで書き出してくれるということが分かりました。
●ScriptListener のインストール
Adobe Photoshop CS4/Scripting/Utilities/ScriptingListener.plugin
を
Adobe Photoshop CS4/Plug-Ins/Automate
にコピーする
Photoshopを再度起動
●ログをとる
ドキュメントを開いた状態でアクション作成し「記録」する。
スクリプトログファイルがデスクトップに保存されます。
保存されたログは下記のようなもの。
クリッピングパスを選択して選択範囲の反転、選択範囲を消去というアクション。
うーん。これならスクリプト書いた方がいいなぁ。
// =======================================================
var idOpn = charIDToTypeID( "Opn " );
var desc1 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
desc1.putPath( idnull, new File( "/Users/takeuchig5/Desktop/001103" ) );
executeAction( idOpn, desc1, DialogModes.NO );
// =======================================================
var idslct = charIDToTypeID( "slct" );
var desc2 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref1 = new ActionReference();
var idPath = charIDToTypeID( "Path" );
ref1.putName( idPath, "パス 1" );
desc2.putReference( idnull, ref1 );
executeAction( idslct, desc2, DialogModes.NO );
// =======================================================
var idsetd = charIDToTypeID( "setd" );
var desc3 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref2 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref2.putProperty( idChnl, idfsel );
desc3.putReference( idnull, ref2 );
var idT = charIDToTypeID( "T " );
var ref3 = new ActionReference();
var idPath = charIDToTypeID( "Path" );
var idOrdn = charIDToTypeID( "Ordn" );
var idTrgt = charIDToTypeID( "Trgt" );
ref3.putEnumerated( idPath, idOrdn, idTrgt );
desc3.putReference( idT, ref3 );
var idVrsn = charIDToTypeID( "Vrsn" );
desc3.putInteger( idVrsn, 1 );
var idvectorMaskParams = stringIDToTypeID( "vectorMaskParams" );
desc3.putBoolean( idvectorMaskParams, true );
executeAction( idsetd, desc3, DialogModes.NO );
// =======================================================
var idInvs = charIDToTypeID( "Invs" );
executeAction( idInvs, undefined, DialogModes.NO );
// =======================================================
var idDlt = charIDToTypeID( "Dlt " );
executeAction( idDlt, undefined, DialogModes.NO );