C
HAPTER
3: Scripting Photoshop
Working with the Photoshop Object Model
45
by five pixels. See section
“Setting Application Preferences” on page 32
for examples of how to change
ruler units.
AS
expand selection of current document by pixels 5
contract selection of current document by pixels 5
feather selection of current document by pixels 5
VBS
Dim selRef
Set selRef = appRef.ActiveDocument.Selection
selRef.Expand 5
selRef.Contract 5
selRef.Feather 5
JS
var selRef = app.activeDocument.selection
selRef.expand( 5 )
selRef.contract( 5 )
selRef.feather( 5 )
Filling a selection
You can fill a selection either with a color or a history state.
To fill with a color:
AS
fill selection of current document with contents ¬
{class:RGB color, red:255, green:0, blue:0} blend mode ¬
vivid light opacity 25 without preserving transparency
VBS
Set fillColor = CreateObject("Photoshop.SolidColor")
fillColor.RGB.Red = 255
fillColor.RGB.Green = 0
fillColor.RGB.Blue = 0
selRef.Fill fillColor, 15, 25, False
JS
var fillColor = new SolidColor()
fillColor.rgb.red = 255
fillColor.rgb.green = 0
fillColor.rgb.blue = 0
app.activeDocument.selection.fill( fillColor, ColorBlendMode.VIVIDLIGHT,
25, false)
To fill the current selection with the tenth item in the history state:
N
OTE
:
See
“Using history state objects” on page 47
for information on
History State
objects.
AS
fill selection of current document with contents history state 10¬
of current document
VBS
selRef.Fill docRef.HistoryStates(10)
JS
selRef.fill(app.activeDocument.historyStates[9])
Loading and storing selections
You can store
Selection
objects in, or load them from,
Channel
objects. To store a selection in a channel,
it should have its
kind
(
Kind
/
kind
) property set to a type that indicates that channel holds a selected area:
selected
area
channel
(
psSelectedAreaAlphaChannel
)/
ChannelType
.
SELECTEDAREA
). The following