Adobe 0046100128056 Scripting Guide - Page 140

Working with Preflight, Exploring Preflight Profiles - illustrator

Page 140 highlights

10 Working with Preflight Preflight is a way to verify that you have all required files, fonts, assets (e.g., placed images and PDF files), printer settings, trapping styles, etc., before you send a publication to an output device. For example, if you placed an image as a low-resolution proxy but do not have the high-resolution original image accessible on your hard disk (or workgroup server), that may result in an error during the printing process. Preflight checks for this sort of problem. It can be run in the background as you work. This chapter demonstrates how to interact with the preflight system using scripting. For illustration purposes, we show how to configure preflight to raise an error if the page size is something other than letter size (8.5" x 11"). We briefly highlight how it is done in the user interface, then show how to achieve the same results through scripting. We assume you already read Adobe InDesign CS5 Scripting Tutorial and know how to create, install, and run a script. Exploring Preflight Profiles InDesign's preflight feature is profile based, rule driven, and parameterized. There might be one or more preflight profiles. Initially, there is one profile, [Basic], which is read-only; you cannot modify or delete it. A preflight profile contains many preflight rules. Each rule has a name and multiple data objects. Each data object has a name, data type, and data value. The data value can be changed. Each rule can be configured as follows: X Disabled - The preflight rule is disabled. X Return as error - The preflight rule returns error-level feedback. X Return as warning - The preflight rule returns warning-level feedback. X Return as informational - The preflight rule returns informational-level feedback. To check the profile in InDesign, choose Preflight Panel > Define Profiles. You also can get profile information by scripting. Listing preflight profiles This script fragment shows how to list all preflight profiles. For the complete script, see ListPreflightProfiles. var profiles = app.preflightProfiles; var profileCount = profiles.length;| var str = "Preflight profiles: "; for (var i = 0; i < profileCount; i++) { if (i != 0) { str += ", "; } str += profiles.item(i).name; } alert(str); 140

  • 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

140
10
Working with Preflight
Preflight is a way to verify that you have all required files, fonts, assets (e.g., placed images and PDF files),
printer settings, trapping styles, etc., before you send a publication to an output device. For example, if you
placed an image as a low-resolution proxy but do not have the high-resolution original image accessible
on your hard disk (or workgroup server), that may result in an error during the printing process. Preflight
checks for this sort of problem.
It can be run in the background as you work.
This chapter demonstrates how to interact with the preflight system using scripting. For illustration
purposes, we show how to configure preflight to raise an error if the page size is something other than
letter size (8.5" x 11"). We briefly highlight how it is done in the user interface, then show how to achieve
the same results through scripting.
We assume you already read
Adobe InDesign CS5 Scripting Tutorial
and know how to create, install, and run
a script.
Exploring Preflight Profiles
InDesign’s preflight feature is profile based, rule driven, and parameterized. There might be one or more
preflight profiles. Initially, there is one profile, [Basic], which is read-only; you cannot modify or delete it.
A preflight profile contains many preflight rules. Each rule has a name and multiple data objects. Each data
object has a name, data type, and data value. The data value can be changed. Each rule can be configured
as follows:
X
Disabled — The preflight rule is disabled.
X
Return as error — The preflight rule returns error-level feedback.
X
Return as warning — The preflight rule returns warning-level feedback.
X
Return as informational — The preflight rule returns informational-level feedback.
To check the profile in InDesign, choose Preflight Panel > Define Profiles. You also can get profile
information by scripting.
Listing preflight profiles
This script fragment shows how to list all preflight profiles. For the complete script, see ListPreflightProfiles.
var profiles = app.preflightProfiles;
var profileCount = profiles.length;|
var str = "Preflight profiles: ";
for (var i = 0; i < profileCount; i++)
{
if (i != 0)
{
str += ", ";
}
str += profiles.item(i).name;
}
alert(str);