Adobe Smoke Alarm CS3 Manuale Utente
Photoshop CS3
Adobe Photoshop CS3 Scripting Guide
Action Manager 74
●
On Mac OS, the log files are on the desktop.
Using the Action Manager from JavaScript
The section demonstrates how to use the contents of the
ScriptingListenerJS.log
log to create your
script. Before you begin this section, you need have already recorded an action. The example in this
section assumes you have followed the instructions in
section assumes you have followed the instructions in
The procedures in this section use the Action Manager to make the Emboss filter available to the scripting
interface.
interface.
➤
To create a JavaScript from the ScriptListener output:
1. Do one of the following:
●
Open
ScriptingListenerJS.log
on the desktop.
At the end of the file you will see code similar to the following (although your numbers may be
different):
different):
var id19 = charIDToTypeID( "Embs" );
var desc4 = new ActionDescriptor();
var id20 = charIDToTypeID( "Angl" );
desc4.putInteger( id20, 135 );
var id21 = charIDToTypeID( "Hght" );
desc4.putInteger( id21, 3 );
var id22 = charIDToTypeID( "Amnt" );
desc4.putInteger( id22, 100 );
executeAction( id19, desc4 ,DialogModes.NO);
var desc4 = new ActionDescriptor();
var id20 = charIDToTypeID( "Angl" );
desc4.putInteger( id20, 135 );
var id21 = charIDToTypeID( "Hght" );
desc4.putInteger( id21, 3 );
var id22 = charIDToTypeID( "Amnt" );
desc4.putInteger( id22, 100 );
executeAction( id19, desc4 ,DialogModes.NO);
Note:
ScriptListener separates logged commands with horizontal lines composed of equal signs
(=====...). If this is not the first action recorded in the log, you can easily locate the most recent
action; it follows the final equal sign line.
(=====...). If this is not the first action recorded in the log, you can easily locate the most recent
action; it follows the final equal sign line.
2. Copy the JavaScript code associated with the emboss action from
ScriptListenerJS.log
to another
file, called
emboss.jsx
.
3. In the
emboss.jsx
script, identify the values that you used with the filter (135, 3 and 100). Substitute
the filter specification values with variable names.
In the following example,
135
has been replaced with
angle
;
3
has been replaced with
height
;
100
has
been replaced with
amount
.
var id19 = charIDToTypeID( "Embs" );
var desc4 = new ActionDescriptor();
var id20 = charIDToTypeID( "Angl" );
desc4.putInteger( id20, angle );
var id21 = charIDToTypeID( "Hght" );
desc4.putInteger( id21, height );
var id22 = charIDToTypeID( "Amnt" );
desc7.putInteger( id22, amount );
executeAction( id19, desc4,DialogModes.NO );
var id20 = charIDToTypeID( "Angl" );
desc4.putInteger( id20, angle );
var id21 = charIDToTypeID( "Hght" );
desc4.putInteger( id21, height );
var id22 = charIDToTypeID( "Amnt" );
desc7.putInteger( id22, amount );
executeAction( id19, desc4,DialogModes.NO );
4. Wrap the code in a JavaScript function. In the following example, the function name is
emboss
.
function emboss( angle, height, amount )
{
{
var id19 = charIDToTypeID( "Embs" );
var desc4 = new ActionDescriptor();
var id20 = charIDToTypeID( "Angl" );
var desc4 = new ActionDescriptor();
var id20 = charIDToTypeID( "Angl" );