Adobe 0046100128056 Scripting Guide - Page 62

Arranging items, Transforming Items, Using the transform method

Page 62 highlights

CHAPTER 5: Working with Page Items Transforming Page Items 62 //Given a rectangle "myRectangle"... myRectangle.convertShape(ConvertShapeOptions.convertToOpenPath); Arranging page items Page items in an InDesign layout can be arranged in front of or behind each other by adjusting their stacking order within a layer, or can be placed on different layers. The following script fragment shows how to bring objects to the front or back of their layer, and how to control the stacking order of objects relative to each other (for the complete script, refer to StackingOrder). //Given a rectangle "myRectangle" and an oval "myOval", //where "myOval" is in front of "myRectangle", bring //the rectangle to the front... myRectangle.bringToFront(); When you create a page item, you can specify its layer, but you can also move a page item from one layer to another. The item layeritemLayerItemLayer property of the page item is the key to doing this, as shown in the following script fragment (for the complete script, refer to ItemLayer). //Given a rectangle "myRectangle" and a layer "myLayer", //send the rectangle to the layer... myRectangle.itemLayer = app.Documents.item(0).layers.item("myLayer"); The stacking order of layers in a document can also be changed using the move move method of the layer itself, as shown in the following script fragment (for the complete script, refer to MoveLayer). //Given a layer "myLayer", move the layer behind //the default layer (the lowest layer in the document //is layers.item(-1). myLayer.move(LocationOptionsafter, app.documents.item(0).layers.item(-1)); Transforming Page Items Transformations include scaling, rotation, shearing (skewing), and movement (or translation). In scripting, you apply transformations using the transform method. This one method replaces the resize, rotate, and shear methods used in versions of InDesign prior to InDesign CS3 (5.0). Using the transform method The transform method requires a transformation matrix (transformationMatrix) object that defines the transformation or series of transformations to apply to the object. A transformation matrix can contain any combination of scale, rotate, shear, or translate operations. The order in which transformations are applied to an object is important. Applying transformations in differing orders can produce very different results. To transform an object, you follow two steps: 1. Create a transformation matrix. 2. Apply the transformation matrix to the object using the transform method. When you do this, you also specify the coordinate system in which the transformation is to take place. For more on coordinate systems, see "Coordinate spaces" on page 65. In addition, you specify the center of transformation, or transformation origin. For more on specifying the transformation origin, see "Transformation origin" on page 66.

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209

C
HAPTER
5: Working with Page Items
Transforming Page Items
62
//Given a rectangle "myRectangle"...
myRectangle.convertShape(ConvertShapeOptions.convertToOpenPath);
Arranging page items
Page items in an InDesign layout can be arranged in front of or behind each other by adjusting their
stacking order within a layer, or can be placed on different layers. The following script fragment shows how
to bring objects to the front or back of their layer, and how to control the stacking order of objects relative
to each other (for the complete script, refer to StackingOrder).
//Given a rectangle "myRectangle" and an oval "myOval",
//where "myOval" is in front of "myRectangle", bring
//the rectangle to the front...
myRectangle.bringToFront();
When you create a page item, you can specify its layer, but you can also move a page item from one layer
to another. The item layeritemLayerItemLayer property of the page item is the key to doing this, as shown
in the following script fragment (for the complete script, refer to ItemLayer).
//Given a rectangle "myRectangle" and a layer "myLayer",
//send the rectangle to the layer...
myRectangle.itemLayer = app.Documents.item(0).layers.item("myLayer");
The stacking order of layers in a document can also be changed using the move move method of the layer
itself, as shown in the following script fragment (for the complete script, refer to MoveLayer).
//Given a layer "myLayer", move the layer behind
//the default layer (the lowest layer in the document
//is layers.item(-1).
myLayer.move(LocationOptionsafter, app.documents.item(0).layers.item(-1));
Transforming Page Items
Transformations include scaling, rotation, shearing (skewing), and movement (or translation). In scripting,
you apply transformations using the
transform
method. This one method replaces the
resize
,
rotate
,
and
shear
methods used in versions of InDesign prior to InDesign CS3 (5.0).
Using the transform method
The
transform
method requires a transformation matrix (
transformationMatrix
) object that defines
the transformation or series of transformations to apply to the object. A transformation matrix can contain
any combination of scale, rotate, shear, or translate operations.
The order in which transformations are applied to an object is important. Applying transformations in
differing orders can produce very different results.
To transform an object, you follow two steps:
1.
Create a transformation matrix.
2.
Apply the transformation matrix to the object using the
transform
method. When you do this, you
also specify the coordinate system in which the transformation is to take place. For more on
coordinate systems, see
“Coordinate spaces” on page 65
. In addition, you specify the center of
transformation, or transformation origin. For more on specifying the transformation origin, see
“Transformation origin” on page 66
.