普通に処理すると自動化した操作分ヒストリーが増えてしまいます。
activeDocument.suspendHistory('ヒストリー名','function()');
上記とすることにより関数内の処理を1つのヒストリーにまとめておけます。こうすることでアンドゥ1回で元に戻せるので非常に助かります。
処理を関数で用意しておけば簡単に導入できるのでおすすめです。
次にアンドゥ。
スクリプトリスナーで拾ってくるととてつもなく長い関数が返ってきます。
executeAction(charIDToTypeID( "undo" ),undefined,DialogModes.NO);
こう記述することが出来るようです。1行になりました。エラー処理で終了したあとなどに書いておけば元に戻せていいですね。
更にスタイルのコピーとペースト。
function styleCopy() {
executeAction( charIDToTypeID( "CpFX" ), undefined, DialogModes.NO );
}
function stylePe() {
executeAction( charIDToTypeID( "PaFX" ), undefined, DialogModes.NO );
}
スクリプトリスナーは面倒なことこの上なしで。実はココまで短くなります。アンドゥと同じですね。どうもこの手の処理はcharIDToTypeID( "hoge" )の部分を変更することで色々できそうですが、こういった情報はどこにあるのでしょうか?
特にヒストリーの統合に関してアドオンなどで配布する際には是非導入したいですね。
0 件のコメント:
コメントを投稿