Adobe Smoke Alarm CS3 Manuale Utente

Pagina di 85
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 
The procedures in this section use the Action Manager to make the Emboss filter available to the scripting 
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):
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);
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. 
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 );
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" );