首页 > 解决方案 > 每次在 Photoshop 中应用特定操作后都会提示“已完成”

问题描述

当 Photoshop 中的用户通过单击应用操作时,我想获得 Javascript 警报。检查此屏幕截图。在这里,当用户单击灰色操作后,将应用它应该给出一个已完成的警报。

我在这段代码下面试过,但它不起作用。期待您的帮助。

app.actions["actionName"].onComplete(function(){ alert('action name - completed') })

标签: javascriptjsxadobeextendscriptphotoshop-script

解决方案


您需要一个调用该操作的函数。在我的示例中,我有一个可以展平所有图层的操作。只需将动作的名称和它的动作集替换为您想要的动作(“用修剪检查新的”)。

// Play action
// replace these parameters with your own
play_action("Flatten layers", "My Favourite Actions");

function play_action(actName, actSet)
{
    // =======================================================
    var idPly = charIDToTypeID( "Ply " );
    var desc1784 = new ActionDescriptor();
    var idnull = charIDToTypeID( "null" );
    var ref572 = new ActionReference();
    var idActn = charIDToTypeID( "Actn" );
    ref572.putName( idActn, actName ); // Action name
    var idASet = charIDToTypeID( "ASet" );
    ref572.putName( idASet, actSet ); // Action set name
    desc1784.putReference( idnull, ref572 );
    executeAction( idPly, desc1784, DialogModes.NO );

    alert("action " + actName + " complete.")
}

推荐阅读