Adobe photoshop cs 2.0 User Guide

Page of 91
Photoshop CS2
Adobe Photoshop CS2  Scripting Guide
 Scripting Photoshop CS2     69
speaking, length values but are included because they are used extensively by Photoshop CS2 for many 
operations and values.
AppleScript Unit Considerations
AppleScript provides an additional way of working with unit values. You can provide values with an 
explicit unit type where unit values are used. When a typed value is provided its type overrides the ruler’s 
current setting.
For example, to create a document which is 4 inches wide by 5 inches high you would write:
make new document with properties {width:inches 4, ¬
height:inches 5}
The values returned for a Photoshop CS2 property which used units will be returned as a value of the 
current ruler type. Getting the height of the document created above:
set docHeight to height of current document
would return a value of 5.0, which represents 5 inches based on the current ruler settings.
In AppleScript, you can optionally ask for a property value as a particular type.
set docHeight to height of current document as points
This would return a value of 360 (5 inches x 72 points per inch).
The 
points
 and 
picas
 unit value types are PostScript points, with 72 points per inch. The 
traditional 
points
 and 
traditional picas 
unit value types are based on classical type setting values, with 72.27 
points per inch.
You can convert, or coerce, a unit value from one value type to another. For example, the following script 
converts a point value to an inch value.
set pointValue to points 72
set inchValue to pointValue as inches
When this script is run, the variable 
inchValue
 will contain inches 1, which is 72 points converted to 
inches. This conversion ability is built in to the AppleScript language.
Using Unit Values in Calculations
To use a unit value in a calculation it is necessary to first convert the value to a number (unit value cannot 
be used directly in calculations). To multiply an inch value write:
set newValue to (inchValue as number) * someValue
Note:
In AppleScript you can get and set values as pixels or percent as you would any other unit value 
type. You cannot, however, convert a pixel or percent value to another length unit value as you can 
with other length value types. Trying to run the following script will result in an error.
set pixelValue to pixels 72
-- Next line will result in a coercion error when run
set inchValue to pixelValue as inches 
Note:
Because Photoshop CS2 is a pixel-oriented application you may not always get back the same value 
as you pass in when setting a value. For example, if 
ruler units
 is set to mm units, and you create 
a document that is 30 x 30, the value returned for the height or width will be 30.056 if your 
document resolution is set to 72 ppi. The scripting interface assumes settings are measured by ppi.
Unit Value Usage
The following tables list the properties of the classes/objects that are defined to use unit values. Unit 
values for these properties, unless otherwise indicated in the table, are based the graphics ruler setting.
To use this table, do one of the following: