0% found this document useful (0 votes)
15 views281 pages

Illustrator VBScript Reference

Uploaded by

hxert
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views281 pages

Illustrator VBScript Reference

Uploaded by

hxert
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 281

ADOBE® ILLUSTRATOR®

ADOBE ILLUSTRATOR 2025


SCRIPTING REFERENCE:
VBSCRIPT
 2024 Adobe Incorporated. All rights reserved.

Adobe Illustrator 2025 Scripting Reference: VBScript

If this guide is distributed with software that includes an end user agreement, this guide, as well as the software
described in it, is furnished under license and may be used or copied only in accordance with the terms of such license.
Except as permitted by any such license, no part of this guide may be reproduced, stored in a retrieval system, or
transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, without the prior written
permission of Adobe Incorporated. Please note that the content in this guide is protected under copyright law even if it
is not distributed with software that includes an end user license agreement.

The content of this guide is furnished for informational use only, is subject to change without notice, and should not be
construed as a commitment by Adobe Incorporated. Adobe Incorporated assumes no responsibility or liability for any
errors or inaccuracies that may appear in the informational content contained in this guide.

Please remember that existing artwork or images that you may want to include in your project may be protected under
copyright law. The unauthorized incorporation of such material into your new work could be a violation of the rights of
the copyright owner. Please be sure to obtain any permission required from the copyright owner.

Any references to company names in sample templates are for demonstration purposes only and are not intended to
refer to any actual organization.

Adobe, the Adobe logo, Acrobat, Illustrator, Macromedia, and Photoshop are either registered trademarks or trademarks
of Adobe Incorporated in the United States and/or other countries.

Macintosh is a trademark of Apple Computer, Incorporated, registered in the United States and other countries. Windows
is either a registered trademark or trademark of Microsoft Corporation in the United States and other countries.
JavaScript and all Java-related marks are trademarks or registered trademarks of Sun Microsystems, Incorporated in the
United States and other countries.

All other trademarks are the property of their respective owners.

Adobe Incorporated, 345 Park Avenue, San Jose, California 95110, USA. Notice to U.S. Government End Users. The
Software and Documentation are “Commercial Items,” as that term is defined at 48 C.F.R. §2.101, consisting of
“Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48
C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R. §12.212 or 48 C.F.R. §§227.7202-1 through
227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are
being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted
to all other end users pursuant to the terms and conditions herein. Unpublished-rights reserved under the copyright
laws of the United States. Adobe Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End
Users, Adobe agrees to comply with all applicable equal opportunity laws including, if appropriate, the provisions of
Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38
USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1
through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence
shall be incorporated by reference.
Contents

1 VBScript Object Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8


Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Artboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Artboards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
AutoCADFileOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Brush . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Brushes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
CharacterAttributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
CharacterStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
CharacterStyles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
CMYKColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Color info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
CompoundPathItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
CompoundPathItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
DataSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
DataSets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
DocumentPreset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
EPSSaveOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
ExportForScreens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
ExportOptionsAutoCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
ExportOptionsGIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
ExportOptionsJPEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
ExportOptionsPhotoshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
ExportOptionsPNG8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
ExportOptionsPNG24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
ExportOptionsSVG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
ExportOptionsTIFF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
ExportOptionsWebP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
FreeHandFileOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
FXGSaveOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

3
Contents 4

GradientColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Gradients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
GradientStop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
GradientStops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
GraphicStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
GraphicStyles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
GraphItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
GraphItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
GrayColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
GridRepeatConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
GridRepeatItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
GridRepeatItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
AiGridRepeatUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
GroupItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
GroupItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
IllustratorSaveOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ImageCaptureOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Ink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
InkInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
InsertionPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
InsertionPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
LabColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
LegacyTextItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
LegacyTextItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
MeshItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
MeshItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
NoColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
NonNativeItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
NonNativeItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
OpenOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
PageItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
PageItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Paper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
PaperInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Contents 5

ParagraphAttributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Paragraphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
ParagraphStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
ParagraphStyles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
PathItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
PathItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
PathPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
PathPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
PatternColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
PDFFileOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
PDFSaveOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
PhotoshopFileOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
PlacedItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
PlacedItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
PluginItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
PluginItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
PPDFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
PPDFileInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
PrintColorManagementOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
PrintColorSeparationOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
PrintCoordinateOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Printer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
PrinterInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
PrintFlattenerOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
PrintFontOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
PrintJobOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
PrintOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
PrintPageMarksOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
PrintPaperOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
PrintPostScriptOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
RadialRepeatConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
RadialRepeatItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
RadialRepeatItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
AiRadialRepeatUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
RasterEffectOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Contents 6

RasterItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
RasterItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
RasterizeOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
RGBColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
ScreenInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
ScreenSpotFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Spot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
SpotColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Spots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Stories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Story . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Swatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Swatches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
SwatchGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
SwatchGroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Symbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
SymbolItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
SymbolItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
SymmetryRepeatConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
SymmetryRepeatItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
SymmetryRepeatItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
AiSymmetryRepeatUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
TabStopInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
TextFont . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
TextFonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
TextFrame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
TextFrames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
TextPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
TextRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
TextRanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
TracingObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
TracingOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Contents 7

View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265

2 Enumerations Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267


1 VBScript Object Reference

This reference section describes the objects and methods in the Illustrator VBScript type library. All of the
classes in the type library are presented alphabetically. The chapter concludes with an enumerations
reference which lists all of the enumerations in the Illustrator type library.

Each class listing includes the following:

 Properties of the class — These include value type, read-only status, and an explanation.

 Methods for the class — Value types needed by the method are shown in bold face. Enumerated
values are linked to the Chapter 2, “Enumerations Reference.” Required terms are shown in plain face.
All items surrounded by brackets ([ ]) are optional.

 Script examples — These example are intended to illustrate concepts, and do not necessarily
represent the best or most efficient way to construct a VBScript script. They contain little error
checking, and assume that the proper context exists for the scripts to execute in (for instance, that
there is a document open or items selected).

Each script contains a single subroutine that can be pasted into any event in a VBScript form if you are
using the VBScript development environment. A standard button click event is used for all examples. If
you are using a built-in VBScript editor in a VBA application, you can paste the script into a macro
routine. In either case, modify the Sub statement in the example to work with your situation.

For an overview of how the Illustrator object model is structured, see Adobe Illustrator 2025 Scripting Guide.

8
CHAPTER 1: VBScript Object Reference Application 9

Application
The Adobe Illustrator application object, which contains all other Illustrator objects.

Application properties

Property Value type What it is


ActionIsRunning Boolean Read-only. If true, an action is still running.
ActiveDocument Document The active (frontmost) document in Illustrator.
Application Application Read-only. The Illustrator Application object.
BrowserAvailable Boolean Read-only. If true, a Web browser is available.
BuildNumber String Read-only. The application’s build number.
ColorSettingsList Variant Read-only. The list of color-settings files
currently available for use.
CoordinateSystem AiCoordinateSystem The coordinate system currently in use,
document or artboard.
DefaultColorSettings String Read-only. The default color-settings file for the
current application locale.
Documents Documents Read-only. The documents in the application.
FlattenerPresetsList Variant Read-only. The list of flattener style names
currently available for use.
FreeMemory Long Read-only. The amount of unused memory (in
bytes) within the Illustrator partition.
HomeScreenVisible Boolean Read-only. If true, the Home screen is visible.
Locale String Read-only. The application’s locale.
Name String Read-only. The application’s name (not related to
the filename of the application file).
PasteRememberLayers Boolean Read-only. If true, the paste operation
maintains the layer structure.
Path String Read-only. The file path to the application.
PDFPresetsList Variant Array of Read-only. The list of preset PDF-options names
String available for use.
PPDFileList Variant Array of Read-only. The list of PPD files currently available
Strings for use.
Preferences Preferences Read-only. The application preferences.
PrinterList Variant Read-only. A list of available printers.
CHAPTER 1: VBScript Object Reference Application 10

Property Value type What it is


PrintPresetsList Variant Read-only. The list of preset printing-options
names currently available for use.
ScriptingVersion String Read-only. The version of the Scripting plug-in.
Selection Variant Array of All currently selected objects in the active
objects (frontmost) document.
StartupPresetsList Variant Read-only. The list of presets available for
creating a new document.
TextFonts TextFonts Read-only. The installed fonts.
TracingPresetList Variant Array of Read-only. The list of preset tracing-options
String names available for use.
UserInteractionLevel AiUserInteractionL The allowed level of interaction with users in the
evel form of dialogs and message boxes.
Version String Read-only. The version of the Illustrator
application.
Visible Boolean Read-only. If true, the application is visible.

Application methods

Method Returns What it does


ConcatenateMatrix Matrix Concatenates two
(matrix as Matrix, matrices.
secondMatrix as Matrix)

ConcatenateRotationMatrix Matrix Concatenates a rotation to


(matrix as Matrix, a transformation matrix.
angle as Double)

ConcatenateScaleMatrix Matrix Concatenates a scale to a


(matrix as Matrix, transformation matrix.
[, scaleX as Double]
[, scaleY as Double])

ConcatenateTranslationMatrix Matrix Concatenates a translation


(matrix as Matrix, to a transformation matrix.
[, deltaX as Double]
[, deltaY as Double])

ConvertSampleColor array of Converts a


(SourceColorSpace as AiImageColorSpace, ColorCom sample-component color
SourceColor as ColorComponents, ponents from one color space to
DestColorSpace as AiImageColorSpace,
another.
ColorConvertPurpose as AiColorConvertPurpose
[,SourceHasAlpha as Boolean]
[,DestHasAlpha as Boolean])

Copy Nothing Copies the current


() selection to the clipboard.
CHAPTER 1: VBScript Object Reference Application 11

Method Returns What it does


Cut Nothing Cuts the current selection
() to the clipboard.
DeleteWorkspace Boolean Deletes a workspace.
(workspaceName as String)

DoJavaScript String Executes the specified


(JavaScriptCode as String, JavaScript® code.
[, Arguments as Variant Array]
[, ExecutionMode as AiJavaScriptExecutionMode])

DoJavaScriptFile String Executes the specified


(JavaScriptFile as File, JavaScript file.
[, Arguments as Variant Array]
[, ExecutionMode as AiJavaScriptExecutionMode])

DoScript Nothing Plays an action from the


(Action as String, Actions palette.
From as String
[, dialogs as Boolean]) NOTE: Use DoScript only if
you intend to run your
script from an application
external to Illustrator, such
as the Windows® Script
Host. Calling DoScript
when running a script
from Illustrator’s File >
Scripts menu may yield
unexpected results.
GetIdentityMatrix Matrix Returns an identity matrix.
()

GetPPDFileInfo PPDFileI Gets detailed file


(Name as String) nfo information for specified
PPD file.
GetPresetFileOfType String Returns the full path to the
(PresetType as AiDocumentPresetType) default document profile
for the specified preset
type.
GetPresetSettings Document Retrieves the
(Preset as String) Preset tracing-option settings
from the template with a
given preset name.
CHAPTER 1: VBScript Object Reference Application 12

Method Returns What it does


GetRotationMatrix Matrix Returns a transformation
([Angle as Double]) matrix containing a single
rotation.

NOTE: Requires a value in


degrees. For example, 30
rotates the object 30
degrees counterclockwise;
-30 rotates the object 30
degrees clockwise.
GetScaleMatrix Matrix Returns a transformation
([scaleX as Double] matrix containing a single
[, scaleY as Double]) scale.

NOTE: Requires a value in


percentage. For example,
60 scales the object to
60% of its original size; 200
doubles the object’s
bounds.
GetScriptableHelpGroup variant Gets the scriptable help
() group object that
represents the search
widget in the app bar.
GetTranslationMatrix Matrix Returns a transformation
([deltaX as Double] matrix containing a single
[, deltaY as Double]) translation.

NOTE: Requires a value in


points. For example,
{100,200} moves the
object 100 pt. to the right
and 200 pt. up; a minus
before each number
moves the object left and
down.
InvertMatrix Matrix Inverts a matrix.
(matrix as Matrix)

IsEqualMatrix Boolean Checks whether two


(matrix as Matrix, matrices are equal.
secondMatrix as Matrix)

IsSingularMatrix Boolean Checks whether a matrix is


(matrix as Matrix) singular and cannot be
inverted.
CHAPTER 1: VBScript Object Reference Application 13

Method Returns What it does


LoadColorSettings Nothing Loads color settings from
(fileSpec as String) specified file, or, if file is
empty, turns color
management off.
Open Document Opens the specified file
(file as String, document.
[documentColorSpace as AiDocumentColorSpace],
[options as Object]) If called to open a
pre-Illustrator 9 document
that contains both RGB
and CMYK colors, supply
DocumentColorSpace in
order to convert all colors
to the specified color
space. If not supplied,
Illustrator displays a dialog
to the user.
Paste Nothing Pastes the clipboard
() content into the current
document.
Quit Nothing Quits Illustrator.

Redo Nothing Redoes the most recently


() undone transaction.
Redraw Nothing Forces Illustrator to redraw
() all its windows.
ResetWorkspace Boolean Resets the current
() workspace.
SaveWorkspace Boolean Saves a new workspace.
(workspaceName as String)

ShowPresets Nothing Gets the presets from the


(fileSpec as String) file.
SwitchWorkspace Boolean Switches to a workspace.
(workspaceName as String)

TranslatePlaceholderText Nothing Translates the placeholder


(text as String) text to regular text; a way
to enter unicode points in
hex values.
Undo Nothing Undoes the most recent
() transaction.
CHAPTER 1: VBScript Object Reference Application 14

Opening a document

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Open("C:\temp\aFile.ai")

Accessing the selection

In Illustrator, the application’s Selection can be accessed as well as modified. The selection will contain
Empty when there are no selected objects. To deselect all objects in the current document, set the
selection to Empty, as the following example shows.
Set appRef = CreateObject("Illustrator.Application")
appRef.activeDocument.Selection = Empty

A reference to a text range is returned when there is an active insertion point in the contents of a
TextFrame. Similarly, a reference to a range of text is returned when characters are selected in the
contents of a TextFrame.

Executing an action

You can run an action from the Action Palette from a script by using the DoScript method. When you do
this, the control returns to your script before the action has completed. Use the ActionIsRunning
property to test for when the action has completed before executing any other VBScript methods (see the
Windows.DoAction example). You can also use the Sleep method defined on the WScript object to insert
a pause to test this property, as in the following example:
Set appRef = CreateObject("Illustrator.Application")
appRef.DoScript "Opacity 60 (selection)", "Default Actions"
WHILE(appRef.ActionIsRunning)
WScript.sleep 1000
WEND
msgbox "Done"

Invoking JavaScript

DoJavaScript and DoJavaScriptFile can be used to invoke scripts written in JavaScript for Illustrator.

The first argument to DoJavaScript is a string that must evaluate to a valid JavaScript expression. For
example, the following script displays an alert using the JavaScript alert method.
appRef.DoJavaScript "alert(

This example returns the number of open documents.


Set myNumberOfDocuments = appRef.DoJavaScript("documents.length;")
MsgBox myNumberOfDocuments
CHAPTER 1: VBScript Object Reference Application 15

Copy and paste between documents

This script uses the application property ActiveDocument to copy the current document’s selection to the
clipboard before pasting it into our new document. This script also demonstrates how to create a new
document with a specific color space and dimensions.
'Duplicates the selected item in the current document to a new document

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


If Not IsEmpty(appRef.ActiveDocument.selection) Then
appRef.ActiveDocument.Copy
Set newDocument = appRef.Documents.Add(aiDocumentCMYKColor,250, 400)
newDocument.Paste
End If
End If
CHAPTER 1: VBScript Object Reference Artboard 16

Artboard
An Artboard object represents a single artboard in a document. There can be between 1 to 100 artboards
in one document.

Artboard properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtboardRect Rect Size and position of the artboard.
Name String The unique identifying name of the artboard.
Parent Document Read-only. The name of the object that is this Artboard object’s
parent.
RulerOrigin Point Ruler origin of the artboard, relative to the left top corner of the
artboard.
RulerPAR Double Pixel aspect ratio, used in ruler visualization if the units are pixels.
Range: 0.1 to 10.0
ShowCenter Boolean Show center mark.
ShowCrossHairs Boolean Show cross hairs.
ShowSafeAreas Boolean Show title and action safe areas (for video).

Artboard methods

Method Returns What it does


Delete Nothing Deletes this artboard object. You cannot remove the last
() artboard in a document.
CHAPTER 1: VBScript Object Reference Artboards 17

Artboards
A collection of artboards.

Artboards properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

Artboards methods

Method Returns What it does


Add Artboard Creates a new Artboard object.
(rect as ArtboardRect)

GetActiveArtboardIndex Long Retrieves the index position of the active artboard in the
() document
GetByName Artboard Retrieves an artboard object from the list by its unique
(artboardName as String) identifying name.
Index Long Returns the index position of the object within the
(item as DataSets) collection.
Insert Nothing Creates a new artboard object and inserts it at the given
(rect as ArtboardRect, index in the list.
index as Long)

Item Artboard Returns an object reference to the object identified by


(itemKey) itemKey (name or index).

Remove Nothing Deletes an artboard object. You cannot remove the last
(index as Long) artboard in a document.
SetActiveArtboardIndex Nothing Makes a specific artboard active and makes it current in
(index as Long) the iteration order.
CHAPTER 1: VBScript Object Reference AutoCADFileOptions 18

AutoCADFileOptions
Options for opening an AutoCAD drawing, used with the Open method.

AutoCADFileOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
CenterArtwork Boolean If true, center the artwork that is created
on the artboard. Default is true.
GlobalScaleOption AiAutoCADGlobalScaleOption How to scale the drawing on import.
Default is 1
GlobalScalePercent Double The value when globalScaleOption is
2 aiScaleByValue, expressed as a
percentage. Range: 0.0 to 100.0 Default is
100.0

MergeLayers Boolean If true, the layers of the artwork are


merged. Default: false
Parent Document Read-only. The document that contains
this object.
ScaleLineweights Boolean If true, scales line weights by the same
factor as the rest of the drawing. Default is
false.

SelectedLayoutName String Name of the layout in the drawing to


import.
Unit AiAutoCADUnit The unit to map to. Default is
3 aiMillimeters.

UnitScaleRatio Double The ratio by which to scale while mapping


units. Default is 1.0
CHAPTER 1: VBScript Object Reference Brush 19

Brush
A brush in an Illustrator document. Illustrator brushes can be accessed, but not created or deleted, from a
script.

Brush properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The Brush name.
Parent Object Read-only. The container object.

Brush methods

Method Returns What it does


ApplyTo Nothing Applies the brush to a specific art item.
(artItem as PageItem)

Applying a Brush
'Creates a new group, adds a duplicate of each selected item to the group
'then applies a brush to each item in the group

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


If Not IsEmpty(appRef.Selection) Then
selectedItems = appRef.Selection
startIndex = LBound(selectedItems)
endIndex = UBound(selectedItems)

Set newGroup = appRef.ActiveDocument.GroupItems.Add


For i = startIndex To endIndex
Set artItem = selectedItems(i)
Set dupItem = artItem.Duplicate(newGroup, aiPlaceAtEnd)
appRef.ActiveDocument.Brushes(2).ApplyTo artItem
Next
End If
End If
CHAPTER 1: VBScript Object Reference Brushes 20

Brushes
A collection of brushes in a document.

Brushes properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Long. The number of objects in the collection.
Parent Object Read-only. The document that contains this object.

Brushes methods

Method Returns What it does


Index Long Returns the index position of the object within the collection.
(item as Brush)

Item Brush Returns an object reference to the object identified by itemKey


(itemKey) (name or index).

Get all brushes in a document


'Counts the number of brushes in the current document
'and stores in numBrushes

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


numBrushes = appRef.ActiveDocument.Brushes.Count
End If
CHAPTER 1: VBScript Object Reference CharacterAttributes 21

CharacterAttributes
Specifies the properties of a character contained in a text frame. A CharacterStyle object associates
attributes with a text range. See “CharacterStyle” on page 27.

NOTE: Character attributes do not have default values and are undefined until explicitly set.

CharacterAttributes properties

Property Value Type What it is


AkiLeft Double The amount of inter-glyph space
added to the left side of the
glyph in Japanese text (in
thousandths of an em).
AkiRight Double The amount of inter-glyph
spacing added to the right side
of the glyph in Japanese text (in
thousandths of an em).
Alignment AiStyleRunAlignmentType The character alignment type.
AlternateGlyphs AiAlternateGlyphsForm Specifies which kind of alternate
glyphs are used.
Application Application Read-only. The Illustrator
Application object.

AutoLeading Boolean If true, automatic leading is


used.
BaselineDirection AiBaselineDirectionType The Japanese text baseline
direction.
BaselinePosition AiFontBaselineOption The baseline position of text.
BaselineShift Double The amount of shift (in points) of
the text baseline.
Capitalization AiFontCapsOption Specifies whether the text is
normal, all uppercase, all small
caps, or a mix of small caps and
lowercase.
ConnectionForms Boolean If true, OpenType® connection
forms are used.
ContextualLigature Boolean If true, contextual ligatures are
used.
DiscretionaryLigature Boolean If true, discretionary ligatures
are used.
FigureStyle AiFigureStyleType The number style in an
OpenType font.
CHAPTER 1: VBScript Object Reference CharacterAttributes 22

Property Value Type What it is


FillColor Object The color of the text fill.
Fractions Boolean If true, OpenType fractions are
used.
HorizontalScale Double The horizontal scaling factor (as a
percentage).
Italics Boolean If true, the Japanese font
supports italics.
KerningMethod AiAutoKernType The kerning method.
Language AiLanguageType The language of the text.
Leading Double The amount of space between
two lines of text, in points.
Ligature Boolean If true, ligatures are used.
NoBreak Boolean If true, no break is allowed.
OpenTypePosition AiFontOpenTypePositionOption The OpenType baseline position.
Ordinals Boolean If true, OpenType ordinals are
used.
Ornaments Boolean If true, OpenType ornaments are
used.
OverprintFill Boolean If true, overprint the fill of the
text.
OverprintStroke Boolean If true, overprinting of the stroke
of the text is allowed.
Parent Object Read-only. The object’s container.
ProportionalMetrics Boolean If true, proportional metrics in
Japanese OpenType are used.
Rotation Double The character rotation angle.
Size Double The font size in points.
StrikeThrough Boolean If true, characters are
struck-through by a line.
StrokeColor Object The color of the text stroke.
StrokeWeight Double Line width of stroke.
StylisticAlternates Boolean If true, OpenType stylistic
alternates are used.
Swash Boolean If true, OpenType swash
characters are used.
CHAPTER 1: VBScript Object Reference CharacterAttributes 23

Property Value Type What it is


TateChuYokoHorizontal Long The Tate-Chu-Yoko horizontal
adjustment in points.
TateChuYokoVertical Long The Tate-Chu-Yoko vertical
adjustment in points.
TextFont TextFont The font used for the character.
Titling Boolean If true, OpenType titling
alternates are used.
Tracking Long The tracking or range kerning
amount in thousandths of an em.
Tsume Double The percentage of space
reduction around a Japanese
character.
Underline Boolean If true, characters are
underlined.
VerticalScale Double Character vertical scaling factor.
WariChuCharactersAfter Long Specifies how the characters in
Break Wari-Chu text (an inset note in
Japanese text) are divided into
two or more lines.
WariChuCharactersBeforeBr Long Specifies how the characters in
eak Wari-Chu text (an inset note in
Japanese text) are divided into
two or more lines.
WariChuEnabled Boolean If true, Wari-Chu is enabled.
WariChuJustification AiWariChuJustificationType The Wari-Chu justification.
WariChuLineGap Long The Wari-Chu line gap.
WariChuLines Long The number of Wari-Chu
(multiple text lines fit into a space
meant for one) lines.
WariChuScale Double The Wari-Chu scale.
CHAPTER 1: VBScript Object Reference CharacterAttributes 24

Setting character attributes


'Opens a document and adds a simple text frame, then
'uses the CharacterAttributes object to increment
'the horizontal and vertical scale of each character.

Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()


Set textRef = docRef.TextFrames.Add()
textRef.Contents = "I'd rather be scripting!"
textRef.Top = 500
textRef.Left = 40

dSize = 100
iCount = textRef.Characters.Count
i = 1
Dim charRef
Do While (i < (iCount + 1))
dSize = dSize * 1.1
textRef.TextRange.Characters(i).CharacterAttributes.HorizontalScale = dSize
textRef.TextRange.Characters(i).CharacterAttributes.VerticalScale = dSize
i = i + 1
Loop
CHAPTER 1: VBScript Object Reference Characters 25

Characters
A collection of TextRange objects in which each represents a single character.

Characters properties

Property Value type What it is


Application Application Read-only. Application that the collection belongs to.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

Characters methods

Method Returns What it does


Add TextRange Adds a new character with
(contents as String specified text contents at
[, relativeObject as TextFrame] the specified location in the
[, insertionLocation as AiElementPlacement])
current document. If
location is not specified,
adds the new character to
the containing text frame
after the current text
selection or insertion point.
AddBefore TextRange Adds a character before the
(contents as String) current text selection or
insertion point.
Index Long Returns the index position
(itemPtr as TextRange) of the object within the
collection.
RemoveAll Nothing Deletes every element in
() the collection.
CHAPTER 1: VBScript Object Reference Characters 26

Counting characters
'Counts the number of characters in the current document
'and stores the result in numChars

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


numChars = 0
For Each textArt In appRef.ActiveDocument.TextFrames
Set textArtRange = textArt.TextRange
numChars = numChars + textArtRange.length
Next
End If
CHAPTER 1: VBScript Object Reference CharacterStyle 27

CharacterStyle
A named style that specifies character attributes. For an example, see CharacterStyles.

CharacterStyle properties

Property Value type What it is


Application Application Read-only. Application to which the collection
belongs.
CharacterAttributes CharacterAttributes Read-only. The character properties for the style.
Name String The character style’s name.
Parent Object Read-only. The object’s container.

CharacterStyle methods

Method Returns What it does


ApplyTo Nothing Applies the character style to the text object or
(textItem as Object objects.
[, clearingOverrides as Boolean])

Delete Nothing Deletes the object.


()
CHAPTER 1: VBScript Object Reference CharacterStyles 28

CharacterStyles
A collection of character styles.

CharacterStyles properties

Property Value type What it is


Application Application Read-only. Application to which the collection belongs.

Count Long Read-only. Number of elements in the collection.


Parent Object Read-only. The object’s container.

CharacterStyles methods

Method Returns What it does


Add CharacterStyle Creates a named character style.
(Name as String)

Index Long Returns the index position of the object


(itemPtr as CharacterStyle) within the collection.
Item CharacterStyle Returns an object reference to the object
(itemKey) identified by itemKey (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()
CHAPTER 1: VBScript Object Reference CharacterStyles 29

Create and apply character styles


'Opens a document, adds 3 text frames,
'creates a new character style and applies it to
'each of the text frames

Set appRef = CreateObject("Illustrator.Application")

'Create a new document add a 3 simple text items


Set docRef = appRef.Documents.Add()
Set textRef1 = docRef.TextFrames.Add()
textRef1.Contents = "Scripting is fun!"
textRef1.Top = 700
textRef1.Left = 50

Set textRef2 = docRef.TextFrames.Add()


textRef2.Contents = "Scripting is easy!"
textRef2.Top = 625
textRef2.Left = 100

Set textRef3 = docRef.TextFrames.Add()


textRef3.Contents = "Everyone should script!"
textRef3.Top = 550
textRef3.Left = 150
appRef.Redraw

'Create a new character style


Set charStyle = docRef.CharacterStyles.Add("BigRed")

'Create a red color


Set colorRed = CreateObject("Illustrator.RGBColor")
colorRed.Red = 255

'Set character attributes of the new style


With charStyle.CharacterAttributes
.Size = 40
.Tracking = -50
.Capitalization = 0 'aiNormalCaps
.FillColor = colorRed
End With

'Apply style to each textFrame in the document


charStyle.ApplyTo textRef1.TextRange
charStyle.ApplyTo textRef2.TextRange
charStyle.ApplyTo textRef3.TextRange
CHAPTER 1: VBScript Object Reference CMYKColor 30

CMYKColor
A CMYK color specification, used to apply a CMYK color to a layer or art item.

If the color space of a document is RGB and you specify the color value for a page item in that document
using CMYK, Illustrator translates the CMYK color specification into an RGB color specification. The same
thing happens if the document’s color space is CMYK and you specify colors using RGB. Since this
translation can lose information, you should specify colors using the class that matches the document’s
actual color space.

CMYKColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Black Double The black color value. Range: 0.0 to 100.0
Cyan Double The cyan color value. Range: 0.0 to 100.0
Magenta Double The magenta color value. Range: 0.0 to 100.0
Yellow Double The yellow color value. Range: 0.0 to 100.0

Setting CMYK colors


'Creates a new CMYK color and applies it to the first path item

Set appRef = CreateObject("Illustrator.Application")


Set newCMYKColor = CreateObject("Illustrator.CMYKColor")

'Get a reference to the frontmost path in the document


Set frontPath = appRef.ActiveDocument.PathItems(1)

'Set color values for the CMYK objects

newCMYKColor.Black = 0
newCMYKColor.Cyan = 30.4
newCMYKColor.Magenta = 32
newCMYKColor.Yellow = 0

frontPath.Filled = True
frontPath.fillColor = newCMYKColor
CHAPTER 1: VBScript Object Reference Color info 31

Color info
An abstract parent class for all color classes used in Illustrator. Subclasses are:
CMYKColor
GradientColor
GrayColor
LabColor
NoColor
PatternColor
RGBColor
SpotColor
CHAPTER 1: VBScript Object Reference CompoundPathItem 32

CompoundPathItem
Compound paths are objects composed of multiple intersecting paths, resulting in transparent interior
spaces where the original paths overlapped. The PathItems property provides access to the paths that
make up the compound path.

All paths in a compound path share property values. Therefore, if you set the value of a property of any one
of the paths in the compound path, all other paths’ matching property will be updated to the new value.

Paths contained within a compound path or group in a document are returned as individual paths when a
script asks for the paths contained in the document. However, paths contained in a compound path or
group are not returned when a script asks for the paths in a layer which contains the compound path or
group.

CompoundPathItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout? If so, what
kind of knockout?
BlendingMode AiBlendModes The mode used when compositing an object.
ControlBounds Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, the object is editable.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding
4 Doubles stroke width.
Height Double The height of the object, excluding stroke width,
calculated from the GeometricBounds.
Hidden Boolean If true, this object is hidden.
IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer to which this object belongs.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, the object is locked.
Name String The name of this object.
Note String The note assigned to this object.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Parent Document Read-only. The document that contains this object.
PathItems PathItems Read-only. The path art items in this compound
path.
CHAPTER 1: VBScript Object Reference CompoundPathItem 33

Property Value type What it is


Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item, in the format [x, y]. Does not include stroke
weight.
Selected Boolean If true, the object is selected.
Sliced Boolean If true, the CompoundPathItem is sliced. Default:
false

Tags Tags Read-only. The tags contained in this object.


Top Double The position of the top of the item (in points,
measured from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this
object.
VisibilityVariable Variable The VisibilityVariable bound to this object.
VisibleBounds Variant Array of Read-only. The visible bounds of the object
4 Doubles including stroke width.
Width Double The width of the object, excluding stroke width,
calculated from the GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object
(text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

CompoundPathItem methods

Method Returns What it does


Copy Nothing Copies the compound path to the
() clipboard. The associated
document must be the frontmost
document.
Cut Nothing Cuts the compound path onto the
() clipboard. The associated
document must be the frontmost
document.
Delete Nothing Deletes the object.
()
CHAPTER 1: VBScript Object Reference CompoundPathItem 34

Method Returns What it does


Duplicate Object Duplicates the compound path,
([relativeObject as Object], optionally specifying the location
[insertionLocation as AiElementPlacement]) and position for the copy.
Move Nothing Moves the object, specifying the
(relativeObject as Object, new location and position.
insertionLocation as AiElementPlacement)

Resize Nothing Scales the compound path where


(scaleX as Double, scaleX is the horizontal scaling
scaleY as Double, factor (as a percentage) and
[, changePositions as Boolean]
scaleY is the vertical scaling
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean] factor; 100.0 = 100%
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to the


(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the compound path by


(transformationMatrix as Matrix, applying the specified
[, changePositions as Boolean] transformation matrix.
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the compound path


([deltaX as Double] relative to the current position,
[, deltaY as Double] where deltaX is the horizontal
[, transformObjects as Boolean]
offset and deltaY is the vertical
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean] offset.
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the compound path’s


(zOrderCmd as AiZOrderMethod) position in the stacking order of
the group or layer (Parent) that
contains the object.
CHAPTER 1: VBScript Object Reference CompoundPathItem 35

Selecting paths in a document

This example demonstrates how to select all of the paths in a document that are not part of a compound
path or a group by testing the type of the Parent property with a TypeName function.
'Selects path items in the current document that are not
'compound paths

Set appRef = CreateObject("Illustrator.Application")


counter = 0
If appRef.Documents.Count > 0 Then
If appRef.ActiveDocument.PathItems.Count > 0 Then
For Each pathArt In appRef.ActiveDocument.PathItems
If (Not TypeName(pathArt.Parent) = "CompoundPathItem") Then
pathArt.Selected = True
counter = counter + 1
Else
pathArt.Selected = False
End If
Next
End If
End If
CHAPTER 1: VBScript Object Reference CompoundPathItem 36

Creating a compound path

This example demonstrates how to create a new compound path containing three PathItems. The
example then modifies the stroke of the paths in the compound path. Note that when you modify the
properties of a PathItem inside a compound path you affect all paths contained in the compound path.
The example also shows how to access swatches in a document by name.
'Creates a new compound path item, adds 3 new
'path items, then sets the stroke of the compound path

Set appRef = CreateObject("Illustrator.Application")

Set frontDocument = appRef.ActiveDocument


Set activeLayer = frontDocument.activeLayer
Set newCompoundPath = activeLayer.CompoundPathItems.Add

'Create the path items


Set newPath = newCompoundPath.PathItems.Add
newPath.SetEntirePath Array(Array(30, 50), Array(30, 100))

Set newPath = newCompoundPath.PathItems.Add


newPath.SetEntirePath Array(Array(40, 100), Array(100, 100))

Set newPath = newCompoundPath.PathItems.Add


newPath.SetEntirePath Array(Array(100, 110), Array(100, 300))

'Set the stroke of the compound path


newPath.Stroked = True
newPath.StrokeWidth = 3.5
newPath.StrokeColor = frontDocument.Swatches(8).Color
CHAPTER 1: VBScript Object Reference CompoundPathItems 37

CompoundPathItems
A collection of compound paths.

CompoundPathItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

CompoundPathItem methods

Method Returns What it does


Add CompoundPathItem Creates a new CompoundPathItem object.
()

Index Long Returns the index position of the object


(item as CompoundPathItem) within the collection.
Item CompoundPathItem Returns an object reference to the object
(itemKey) identified by itemKey (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()

Counting compound paths


'Counts the compound path items in the current document and
'stores in numCPaths

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


numCPaths = appRef.ActiveDocument.Layers(1).CompoundPathItems.Count
End If
CHAPTER 1: VBScript Object Reference DataSet 38

DataSet
A set of data used for dynamic publishing. A dataset allows you to collect a number of variables and their
dynamic data into one object. To create a DataSet object, you must have at least one variable bound to an
art item.

For more information, see the Variable class and the section on “Dynamic Objects and Symbols” in Adobe
Illustrator 2025 Scripting Guide.

For a sample script that uses a DataSet object, see DataSets.

DataSet properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The name of the DataSet.
Parent Document Read-only. The name of the object that is this DataSet object’s
parent.

DataSet methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Display Nothing Displays the DataSet.


()

Update Nothing Updates the DataSet.


()
CHAPTER 1: VBScript Object Reference DataSets 39

DataSets
A collection of DataSet objects.

DataSets properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of datasets in the collection.
Parent Document Read-only. The name of the object that is this DataSet object’s
parent.

DataSets methods

Method Returns What it does


Add DataSet Creates a new DataSet object.
()

Index Long Returns the index position of the object within the collection.
(item as DataSets)

Item DataSet Returns an object reference to the object identified by itemKey


(itemKey) (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()
CHAPTER 1: VBScript Object Reference DataSets 40

Creating datasets
'Creates two variables (visibility and text),
'creates two datasets using different variable
'values then displays each dataset

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()

'Create a visibility variable


Set itemRef = docRef.PathItems.Rectangle(600, 200, 150, 150)
Set colorRef = CreateObject("Illustrator.RGBColor")
colorRef.Red = 255
itemRef.FillColor = colorRef
Set visibilityVar = docRef.Variables.Add()
visibilityVar.Kind = 2 'aiVisibility
itemRef.VisibilityVariable = visibilityVar

'Create a text variable


Set textRef = docRef.TextFrames.Add
textRef.Contents = "Text Variable, dataset 1"
textRef.Top = 400
textRef.Left = 200
Set textVar = docRef.Variables.Add
textVar.Kind = 3 'aiTextual
textRef.ContentVariable = textVar

'Create dataset 1
Set ds1 = docRef.DataSets.Add()

'Change data and create dataset 2


itemRef.Hidden = True
textRef.Contents = "Text Variable, dataset 2"
Set ds2 = docRef.DataSets.Add()

'Display datasets
ds1.Display
ds2.Display
CHAPTER 1: VBScript Object Reference Document 41

Document
An Illustrator document. Documents are contained in the Application object.

The default document settings—those properties starting with the word “Default”—are global settings
that affect the current document. Be sure to modify these default properties only when a document is
open. Note that if you set default properties to desired values before creating new objects, you can
streamline your scripts, eliminating the need to specify properties such as FillColor and Stroked that
have analogous default properties.

A document’s DocumentColorSpace, Height, and Width can be set only when the document is created.
Once a document is created, these properties cannot be changed.

The frontmost document can be referred to as either AppRef.ActiveDocument or AppRef.Documents(1).

Document properties

Property Value type What it is


ActiveDataSet DataSet The active DataSet object in the
document.
ActiveLayer Layer The active Layer in the document.
ActiveView View Read-only. The document’s current View.
Application Application Read-only. The Illustrator Application
object.
Artboards Artboards Read-only. All artboards in the document.
Brushes Brushes Read-only. The Brushes contained in the
document.
CharacterStyles CharacterStyles Read-only. The list of character styles in
this document.
CompoundPathItems CompoundPathItems Read-only. The CompoundPathItems
contained in the document.
CropBox Variant Array of The boundary of the document’s cropping
4 Doubles box for output.

A document does not have a default


CropBox. In order to read this property you
have to set the CropBox first.
CropStyle AiCropOptions The style of the document’s cropping box.
DataSets DataSet Read-only. A DataSets collection in the
document.
DefaultFillColor Color info The Color to fill new paths if default filled
is true.
DefaultFilled Boolean If true, a new path are filled.
CHAPTER 1: VBScript Object Reference Document 42

Property Value type What it is


DefaultFillOverprint Boolean If true, the art beneath a filled object are
overprinted by default.
DefaultStrokeCap AiStrokeCap Default type of line capping for paths
created.
DefaultStrokeColor Color info The stroke color for new paths if default
stroked is true.
DefaultStroked Boolean If true, the new path are stroked.
DefaultStrokeDashes Variant Array of The default lengths for dashes and gaps in
Doubles dashed lines, starting with the first dash
length, followed by the first gap length,
and so on.
DefaultStrokeDashOffset Double The default distance into the dash pattern
at which the pattern are started for new
paths.
DefaultStrokeJoin AiStrokeJoin Default type of joints in new paths.
DefaultStrokeMiterLimit Double When a default stroke join is set to
mitered, this property specifies when the
join will be converted to beveled
(squared-off ) by default. The default miter
limit of 4 means that when the length of
the point reaches four times the stroke
weight, the join switches from a miter join
to a bevel join. Range: 1 to 500; a value of 1
specifies a bevel join.
DefaultStrokeOverprint Boolean If true, the art items beneath a stroked
object are overprinted by default.
DefaultStrokeWidth Double The default width of stroke for new paths.
DocumentColorSpace AiDocumentColorSpace Read-only. The color specification system
to use for this document’s color space.
FullName String Read-only. The file associated with the
document, which includes the complete
path to the file.
GeometricBounds Variant Array of Read-only. The bounds of the illustration
4 Doubles excluding the stroke width of any objects
in the document.
Gradients Gradients Read-only. The Gradients collection
contained in the document.
GraphicStyles GraphicStyles Read-only. The GraphicStyles contained
in the document.
GraphItems GraphItems Read-only. The GraphItems collection
contained in the document.
CHAPTER 1: VBScript Object Reference Document 43

Property Value type What it is


GroupItems GroupItems Read-only. The GroupItems collection
contained in the document.
Height Double Read-only. The height of the document,
calculated from the GeometricBounds.
InkList Variant Array Read-only. The list of inks in this document.
KinsokuSet Object Read-only. The Kinsoku set of characters
that cannot begin or end a line of Japanese
text.
Layers Layers Read-only. The layers contained in the
document.
LegacyTextItems LegacyTextItems Read-only. The legacy text items in the
document.
MeshItems MeshItems Read-only. The mesh art items contained in
the document.
MojikumiSet Object Read-only. A list of predefined Mojikumi
sets that specify the spacing for the layout
and composition of Japanese text.
Name String Read-only. The document’s name (not the
complete file path to the document).
NonNativeItems NonNativeItems Read-only. The non-native art items in this
document.
OutputResolution Double Read-only. The current output resolution
for the document in dots per inch (dpi).
PageItems PageItems Read-only. The PageItems (contains all art
item classes) contained in the document.
PageOrigin Variant Array of The zero-point of the page in the
2 Doubles document without margins, relative to the
overall height and width.
ParagraphStyles ParagraphStyles Read-only. The list of paragraph styles in
this document.
Parent Application Read-only. The application that contains
this document.
Path String Read-only. The file associated with the
document, which includes the complete
path to the file.
PathItems PathItems Read-only. The PathItems contained in
this document.
Patterns Patterns Read-only. The patterns contained in this
document.
CHAPTER 1: VBScript Object Reference Document 44

Property Value type What it is


PlacedItems PlacedItems Read-only. The PlacedItems contained in
this document.
PluginItems PluginItems Read-only. The PluginItems contained in
this document.
PrintTiles Boolean Read-only. If true, this document is tiled
when printed.
RasterEffectSettings RadialRepeatConfig The document’s raster effect settings.
RasterItems RasterItems Read-only. The raster items contained in
this document.
RulerOrigin Variant Array of The zero-point of the rulers in the
2 Doubles document relative to the bottom left
corner.
RulerUnits AiRulerUnits Read-only. The default measurement units
for the rulers in the document.
Saved Boolean If true, the document has not been
changed since the last time it was saved.
Selection Variant Array of The array of references to the objects in
objects this document’s current selection.
ShowPlacedImages Boolean Read-only. If true, placed images are
displayed in the document.
SplitLongPaths Boolean Read-only. If true, long paths are split
when printing.
Spots Spots Read-only. The SpotColors contained in
this document.
Stationery Boolean Read-only. If true, the file is a stationery
file.
Stories Stories Read-only. The story items in this
document.
Swatches Swatches Read-only. The swatches in this document.
SwatchGroups SwatchGroups Read-only. The swatch groups in this
document.
SymbolItems SymbolItems Read-only. The symbol items in this
document.
Symbols Symbols Read-only. The symbols in this document.
Tags Tags Read-only. The tags in this document.
TextFrames TextFrames Read-only. The text frames in this
document.
CHAPTER 1: VBScript Object Reference Document 45

Property Value type What it is


TileFullPages Boolean Read-only. If true, full pages are tiled
when printing this document.
UseDefaultScreen Boolean Read-only. If true, the printer’s default
screen is used when printing this
document.
Variables Variables Read-only. The variables in this document.
VariablesLocked Boolean If true, the Variables in this document
are locked.
Views Views Read-only. The views in this document.
VisibleBounds Variant Array of Read-only. The visible bounds of the
4 Doubles document, including stroke width of any
objects in the illustration.
Width Double Read-only. The width of this document,
calculated from the GeometricBounds.
XMPString String The XMP metadata packet associated with
this document.

Document methods

Method Returns What it does


Arrange Nothing Arranges multiple documents in
([layoutStyle as AiDocumentLayoutStyle]) the given layout style.
Activate Nothing Brings the first window
() associated with the document to
the front.
Close Nothing Closes the document.
([Saving as AiSaveOptions])

Capture Nothing Captures the current document


(ImageFile as File, window to the target TIFF image
windowSize as Point) file.
ConvertCoordinate Nothing Converts the coordinate system
(Coordinate as Point, used for a single point between
Source as AiCoordinateSystem, artboard and document
Destination as AiCoordinateSystem)
coordinate systems.
Copy Nothing Copies the current selection in
() the document to the clipboard;
the associated document must
be the frontmost document.
CHAPTER 1: VBScript Object Reference Document 46

Method Returns What it does


Cut Nothing Cuts the current selection in the
() document to the clipboard; the
associated document must be
the frontmost document.
Export Nothing Exports the document to the
(ExportFile as String, specified file using one of the
ExportFormat as AiExportType, export file formats. Options for
[Options as Object])
various formats are collected in
ExportOptionsFormat objects.
The appropriate file extension is
automatically appended to the
file name, except for Photoshop®
documents. For these, you must
include the file extension (.psd)
in the file specification.
ExportPDFPreset Nothing Exports the current PDF preset
(File as String) values to the file.
ExportPerspectiveGridPreset Nothing Exports the current perspective
(File as String) grid preset values to the file.
ExportPrintPreset Nothing Exports the current print preset
(File as String) values to the file.
ExportVariables Nothing Exports the current variables
(Filename as String) from this document to the file.
FitArtboardToSelectedArt boolean Resizes the artboard at the given
([Index as Long]) index to fit currently selected art.
Index default is 0. Returns true
on success.
GetPerspectiveActivePlane AiPerspe Retrieves the active plane of the
() ctiveGri active perspective grid of the
dPlaneTy document.
pe

GetScreenMode () NormalSc The mode of display for this view.


reenMode

FullScre
enWithMe
nuMode

FullScre
enNoMenu
Mode

Presenta
tionMode
CHAPTER 1: VBScript Object Reference Document 47

Method Returns What it does


GetViewMode () Overprin The view mode for this view.
tPreview

PixelPre
view

DefaultP
review

HidePerspectiveGrid boolean Hides the current active grid for


() the document. If no grid is visible,
does nothing. Returns true if a
grid is hidden.
ImageCapture Nothing Captures the artwork content
(ImageFile as File, within the clipping boundaries in
[ClipBounds as Rect], this document as a raster image,
[Options as ImageCaptureOptions])
and writes the image data to a
specified file.

If the bounds parameter is


omitted, captures the entire
artwork.
ImportCharacterStyles Nothing Loads the character styles from
(FileSpec as String) the Illustrator file.
ImportParagraphStyles Nothing Loads the paragraph styles from
(FileSpec as String) the Illustrator file.
ImportPDFPreset Nothing Loads all PDF presets from a file.
(FileSpec as String
[, ReplacingPreset as Boolean])

ImportPerspectiveGridPreset Nothing Loads a named perspective-grid


(FileSpec as String preset from a file, or, if no name is
[, PerspectivePreset as String]) given, all presets in the file.
ImportPrintPreset Nothing Loads the named print preset
(PrintPreset as String from the file.
FileSpec as String)

ImportVariables Nothing Imports Variables from the


(Filename as String) specified file into this document.
IsRulerVisible () boolean If true, the ruler is visible.
IsTransparencyGridVisible () boolean If true, the transparency grid is
visible.
CHAPTER 1: VBScript Object Reference Document 48

Method Returns What it does


Paste Nothing Pastes the contents of the
() clipboard into the current layer of
the document; if the document is
the frontmost then all pasted
objects remain selected after the
paste.
PrintOut Nothing Prints the document.
(Options as PrintOptions)

Rasterize PageItem Rasterizes the source art(s) within


(SourceArt as Variant, the specified clip bounds. The
[, ClipBounds as Rect,] source art(s) is disposed of as a
[,Options as RasterizeOptions])
result of the rasterization.
RearrangeArtboards boolean Rearranges artboards in the
([ArtboardLayout as AiDocumentArtboardLayout, document. All arguments are
ArtboardRowsOrCols as Long, optional. Default layout style is
ArtboardSpacing as Long,
aiGridByRow.
ArtboardMoveArtwork as Boolean])
The second argument specifies
the number of rows or columns,
as appropriate for the chosen
layout style, in the range
[1..DocNumArtboards-1], or 1
(the default) for single
row/column layouts.

Spacing is a number of pixels,


default 20.

When last argument is true (the


default), artwork is moved with
the artboards.
Save Nothing Saves the document in its current
() location.
SaveAs Nothing Saves the document in the
([SaveIn as String] specified file as an Illustrator, EPS,
[, Options as: or PDF file.
EPSSaveOptions/
IllustratorSaveOptions/
PDFSaveOptions])

SelectObjectsOnActiveArtboard boolean Selects the objects on the


() currently active artboard. Returns
true on success.

SelectPerspectivePreset boolean Selects a predefined preset to


(PresetPreset as String) define grid for the current
document. Returns true on
success.
CHAPTER 1: VBScript Object Reference Document 49

Method Returns What it does


SetPerspectiveActivePlane boolean Sets the active plane of the active
(PerspectiveGridPlane as perspective grid of the
AiPerspectiveGridPlaneType) document. Returns true on
success.
ShowPerspectiveGrid boolean Shows the current active grid for
() the document, or if no grid is
active, shows the default grid.
Returns true on success.
WindowCapture Nothing Captures the current document
(ImageFile as String, to the target TIFF image file.
WindowSize as Point)

WriteAsLibrary Writes the document to a file as a


(File, File library of specified type.
libraryType) AiLibrar
yType

Closing documents

If you close the document, you should set your document reference to Nothing to prevent your script
accidentally trying to access closed documents.
'Closes the frontmost document without saving

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents(1)

docRef.Close 2' aiDoNotSaveChanges


Set docRef = Nothing

Creating a document with defaults


'Sets the default stroke and fill in the current document to false

Set appRef = CreateObject("Illustrator.Application")

If (appRef.Documents.Count = 0) Then
Set frontDocument = appRef.Documents.Add
Else
Set frontDocument = appRef.Documents(1)
End If
frontDocument.DefaultFilled = False
frontDocument.DefaultStroked = False
CHAPTER 1: VBScript Object Reference Documents 50

Documents
A collection of documents.

Documents properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Object Read-only. The parent of this object.

Documents methods

Method Returns What it does


Add Document Creates a new document
([documentColorSpace As AiDocumentColorSpace] using optional parameters
[, width as Double] and returns a reference to
[, height as Double]
the new document.
[, numArtBoards as Long]
[, artboardLayout as AiDocumentArtboardLayout]
[, artboardSpacing as Double]
[, artboardRowsOrCols as Long])

AddDocument Document Creates a document from


(startupPreset as String the preset, replacing any
[, presetSettings as DocumentPreset] provided setting values, and
[, showOptionsDialog as Boolean)
returns a reference to the
new document.
Index Long Returns the index position
(item as Document) of the object within the
collection.
Item Document Returns an object reference
(itemKey) to the object identified by
itemKey (name or index).

Creating a document with a color space


'Creates a new RGB document

Set appRef = CreateObject("Illustrator.Application")


appRef.Documents.Add 1 'aiDocumentRGBColor
CHAPTER 1: VBScript Object Reference DocumentPreset 51

DocumentPreset
A preset document template to use when creating a new document with AddDocument.

DocumentPreset properties

Property Value type What it is


ArtboardLayout AiDocumentArtboardLayout The layout of artboards in the new
document. Default: AiGridByRow
ArtboardRowsOrCols Long The number of rows (for rows layout) or
columns (for column layout) of artboards.
Range: 1 to (NumArtboards - 1) or 1 for
single row or column layouts. Default: 1
ArtboardSpacing Double The spacing between artboards in the
new document. Default: 20.0
Application Application Read-only. The Illustrator Application
object.
DocumentColorSpace AiDocumentColorSpace The color space for the new document.
DocumentPreviewMode AiDocumentPreviewMode The preview mode for the new document.
DocumentRasterResolu AiDocumentRasterResolution The raster resolution for the new
tion document.
DocumentTitle String The document title.
DocumentTransparency AiDocumentTransparencyGrid The transparency grid color for the new
Grid document.
DocumentUnits AiRulerUnits The ruler units for the new document.
Height Double The height in points. Default is 792.0
NumArtboards Long The number of artboards for the new
document. Range: 1 to 100. Default: 1
Width Double The width in points. Default is 612.0
CHAPTER 1: VBScript Object Reference EPSSaveOptions 52

EPSSaveOptions
Options that may be supplied when saving a document as an Illustrator EPS file. EPSSaveOptions can be
supplied only in conjunction with the document SaveAs method. All properties are optional.

EPSSaveOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator
Application object.

ArtboardRange string If SaveMultipleArtboards is true,


this is considered for multi-asset
extraction, which specifies the
artboard range. An empty string
extracts all the artboards.
Default: empty string
CMYKPostScript Boolean If true, CMYK PostScript® is used.
Compatibility AiCompatibility Illustrator version compatibility for the
EPS file format.
Default: 24
CompatibleGradientPrinting Boolean If true, a raster item of the gradient or
gradient mesh are created so the
object can be printed on PostScript
level 2 printers. Default: false
EmbedAllFonts Boolean If true, fonts are included in the EPS
file.
EmbedLinkedFiles Boolean If true, linked image files are included
in the saved document.
FlattenOuput AiOutputFlattening How should transparency be flattened
for file formats older than Illustrator 9
or greater.
IncludeDocumentThumbnails Boolean If true, the thumbnail image of the
EPS artwork is included.
Overprint AiPDFOverprint The style of overprinting. Default:
1

PostScript AiEPSPostScriptLevel Specifies the PostScript level to use


Enum when saving the file.
Preview AiEPSPreview Format for the EPS preview image.
SaveMultipleArtboards boolean If true, all artboards or range of
artboards are saved. Default: false
CHAPTER 1: VBScript Object Reference EPSSaveOptions 53

Saving to EPS
'Saves the current document to dest in EPS format
'dest contains the full path and file name to save to

Sub exportFileAsEPS (dest)


Set appRef = CreateObject("Illustrator.Application")
Set newSaveOptions = CreateObject("Illustrator.EPSSaveOptions")

If appRef.Documents.Count > 0 Then


newSaveOptions.CMYKPostScript = True
newSaveOptions.EmbedAllFonts = True
Set frontDocument = appRef.ActiveDocument
frontDocument.SaveAs dest, newSaveOptions
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportForScreens 54

ExportForScreens
Options that may be supplied when exporting a document/asset(s)/artboard(s).

ExportForScreensType

Property Value type What it is


toFolder File path The folder where the exported documents/assets/artboards
are saved.
se_jpeg100/se_jpeg2 File type The file type in which the document is exported. For example,
0/se_jpeg50/se_jpeg8 ExportForScreensType.se_jpeg100.
0/se_pdf/se_png24/s
e_png8/se_svg

withOptions Any Options for the file type specified. For further information,
please refer to ExportOptionsJPEG, ExportOptionsPNG24,
ExportOptionsPNG8, ExportOptionsSVG

itemtoexport Item to An item that needs to be exported. For example, a document,


export artboard, or asset.
filenameprefix String String prepended to each file name.

ExportForScaleType

Property Value type What it is


Factor Long Scale artwork by factors like 1x, 2x, 3x and so on, where 1x
means 72 ppi.
Height Long Scale artwork by specifying artwork height in pixels like
100px, 124px etc. Width of the artwork is adjusted
automatically to maintain the aspect ratio.
Resolution Long Scale artwork by specifying resolution in ppi like 72 ppi, 100
ppi, 144 ppi etc
Width Long Scale artwork by specifying artwork width in pixels like 100px,
124px etc. Height of the artwork is adjusted automatically to
maintain the aspect ratio.
CHAPTER 1: VBScript Object Reference ExportOptionsAutoCAD 55

ExportOptionsAutoCAD
Options for exporting a document as an AutoCAD file, used with the Document Export method. All
properties are optional.

When you export a document, the default file extension (DWG) is appended automatically. You should not
include a file extension in the file specification. To override the default AutoCAD export format, use the
ExportFileFormat property.

ExportOptionsAutoCAD properties

Property Value type What it is


AlterPathsForAppearance Boolean If true, paths are altered (if needed)
to maintain appearance.
Default: false
Application Application Read-only. The Illustrator
Application object.

Colors AiAutoCADColors The number of colors to export into


the AutoCAD file.
ConvertTextToOutlines Boolean If true, text is converted to outlines.
Default: false
ExportFileFormat AiAutoCADExportFileFormat The file format to which to export.
Default: 1
ExportOption AiAutoCADExportOption Whether to preserve appearance or
editability during export. Default:
1

ExportSelectedArtOnly Boolean If true, only selected artwork is


exported. Default: false
RasterFormat AiAutoCADRasterFormat The format in which to export raster
art.
ScaleLineweights Boolean If true, line weights are scaled by the
same scaling factor as the rest of the
drawing. Default: false
Unit AiAutoCADUnit Measurement units from which to
map.
UnitScaleRatio Double The ratio by which to scale output.
Version AiAutoCADCompatibility The release of AutoCAD to export to.
Default: 5 ’aiAutoCADRelease24
CHAPTER 1: VBScript Object Reference ExportOptionsGIF 56

ExportOptionsGIF
Options that may be supplied when exporting a document as a GIF file. See the Document Export method
for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

ExportOptionsGIF properties

Property Value type What it is


AntiAliasing Boolean If true, the exported image is anti-aliased.
Default: true
Application Application Read-only. The Illustrator Application object.
ArtBoardClipping Boolean If true, the exported image is clipped to the art
board. Default: false
ColorCount Long The number of colors in the exported image’s
color table. Range: 2 to 256. Default: 128
ColorDither AiColorDitherMethod The method used to dither colors in the exported
image. Default: &H4466736E
ColorReduction AiColorReductionMethod The method used to reduce the number of colors
in the exported image.
Default: &H536C7476
DitherPercent Long The amount that the colors of the exported
image are dithered, where 100.0 is 100%
HorizontalScale Double The horizontal scaling factor applied to the
exported image, where 100.0 is 100%. Default:
100.0

InfoLossPercent Long The level of information loss allowed during


compression, where 100.0 is 100%. Default: 0
Interlaced Boolean If true, the exported image is interlaced. Default:
false

Matte Boolean If true, the art board is matted with a color.


Default: true
MatteColor RGBColor The color to use when matting the art board.
Default: white
SaveAsHTML Boolean If true, the exported image is saved with an
accompanying HTML file. Default: false
Transparency Boolean If true, the exported image uses transparency.
Default: true
CHAPTER 1: VBScript Object Reference ExportOptionsGIF 57

Property Value type What it is


VerticalScale Double The vertical scaling factor applied to the
exported image, where 100.0 is 100%. Default:
100.0

WebSnap Long How much should the color table be changed to


match the web palette, where 100 is maximum.
Default: 0

Exporting as GIF
'Exports the current document as GIF to dest
'dest contains the full path and file name to save to

Sub exportFileAsGIF (dest)


Set appRef = CreateObject("Illustrator.Application")
Set gifExportOptions = CreateObject("Illustrator.ExportOptionsGIF")

If appRef.Documents.Count > 0 Then


gifExportOptions.AntiAliasing = False
gifExportOptions.ColorCount = 64
gifExportOptions.ColorDither = 1147564910'aiDiffusion
Set docRef = appRef.ActiveDocument
Call docRef.Export (dest, 6, gifEportOptions)' 6 = aiGIF
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsJPEG 58

ExportOptionsJPEG
Options that may be supplied when exporting a document as a JPEG file. See the Document Export
method for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

ExportOptionsJPEG

Property Value type What it is


AntiAliasing Boolean If true, the exported image is anti-aliased. Default: true
Application Application Read-only. The Illustrator Application object.
ArtBoardClipping Boolean If true, the exported image is clipped to the art board.
Default: false
BlurAmount Double The amount of blur to apply to the exported image. Range: 0.0
to 2.0. Default: 0.0
HorizontalScale Double The horizontal scaling factor applied to the exported image,
where 100.0 is 100%. Default: 100.0
Matte Boolean If true, the art board is matted with a color. Default: true
MatteColor RGBColor The color to use when matting the art board. Default: white
Optimization Boolean If true, the exported image is optimized for web viewing.
Default: true
QualitySetting Long The quality of the exported image. Range: 0 to 100. Default: 30
SaveAsHTML Boolean If true, the exported image is saved with an accompanying
HTML file. Default: false
VerticalScale Double The vertical scaling factor applied to the exported image,
where 100.0 is 100%. Default: 100.0
CHAPTER 1: VBScript Object Reference ExportOptionsJPEG 59

Exporting to JPEG
'Exports the current document as JPEG to dest
'dest contains the full path and file name to save to

Sub exportFileAsJPEG (dest)


Set appRef = CreateObject("Illustrator.Application")
Set jpegExportOptions = CreateObject("Illustrator.ExportOptionsJPEG")

If appRef.Documents.Count > 0 Then


jpegExportOptions.AntiAliasing = False
jpegExportOptions.QualitySetting = 70
Set docRef = appRef.ActiveDocument
Call docRef.Export (dest, 1, jpegExportOptions) ' 1 = aiJPEG
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsPhotoshop 60

ExportOptionsPhotoshop
Options that may be supplied when exporting a document as an Adobe Photoshop® file. See the
Document Export method for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

All properties are optional.

ExportOptionsPhotoshop properties

Property Value type What it is


AntiAliasing Boolean If true, the exported image is anti-aliased. Default:
true

Application Application Read-only. The Illustrator Application object.


ArtboardRange string If SaveMultipleArtboards is true, this is
considered for multi-asset extraction, which
specifies the artboard range. An empty string
extracts all the artboards. Default: empty string
EditableText Boolean If true, text objects are exported as editable text
layers. Default: true
EmbedICCProfile Boolean If true, an ICC profile are embedded in the
exported file. Default: false
ImageColorSpace AiImageColorSpace The color space of the exported file.
Default: aiImageRGB
MaximumEditability Boolean If true, preserve as much of the original
document’s structure as possible when exporting.
Default: true
Resolution Double The resolution of the exported file in dots per inch.
Range: 72 to 2400. Default: 150
SaveMultipleArtboards boolean If true, all artboards or range of artboards are
saved. Default: false
Warnings Boolean If true, a warning dialog are displayed because of
conflicts in the export settings. Default: true
WriteLayers Boolean If true, the document layers are preserved in the
exported file. Default: true
CHAPTER 1: VBScript Object Reference ExportOptionsPhotoshop 61

Exporting to Photoshop

This example exports the current document as a Photoshop 5 file with layers.
'Exports the current document as PSD (Photoshop) to dest
'dest contains the full path and file name to save to

Sub exportFileAsPSD (dest)


Set appRef = CreateObject("Illustrator.Application")
Set psdExportOptions = CreateObject("Illustrator.ExportOptionsPhotoshop")

If appRef.Documents.Count > 0 Then


psdExportOptions.Resolution = 150
Set docRef = appRef.ActiveDocument
Call docRef.Export (dest, 2, psdExportOptions) ' 2 = aiPhotoshop
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsPNG8 62

ExportOptionsPNG8
Options that may be supplied when exporting a document as an 8-bit PNG file. See the Document Export
method for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

ExportOptionsPNG8 properties

Property Value type What it is


AntiAliasing Boolean If true, the exported image is anti-aliased.
Default: true
Application Application Read-only. The Illustrator Application object.
ArtBoardClipping Boolean If true, the exported image is clipped to the art
board. Default: false
ColorCount Long The number of colors in the exported image’s
color table. Range: 2 to 256. Default: 128
ColorDither AiColorDitherMethod The method used to dither colors in the exported
image. Default: &H4466736E
ColorReduction AiColorReductionMethod The method used to reduce the number of colors
in the exported image.
Default: &H536C7476
DitherPercent Long Specifies how much the colors of the exported
image are dithered, where 100.0 is 100%
HorizontalScale Double The horizontal scaling factor applied to the
exported image, where 100.0 is 100%. Default:
100.0

Interlaced Boolean If true, the exported image are interlaced.


Default: false
Matte Boolean If true, the art board is matted with a color.
Default: true
MatteColor RGBColor The color to use when matting the art board.
Default: white
SaveAsHTML Boolean If true, the exported image is saved with an
accompanying HTML file. Default: false
Transparency Boolean If true, the exported image uses transparency.
Default: true
CHAPTER 1: VBScript Object Reference ExportOptionsPNG8 63

Property Value type What it is


VerticalScale Double The vertical scaling factor applied to the exported
image, where 100.0 is 100%. Default: 100.0
WebSnap Long Specifies how much the color table are changed
to match the Web palette, where 100 is
maximum. Default: 0

Exporting to PNG8

This example exports the current document as a PNG8 file.


'Exports the current document as PNG8 to dest
'dest contains the full path and file name to save to

Sub exportFileAsPNG (dest)


Set appRef = CreateObject("Illustrator.Application")
Set png8ExportOptions = CreateObject("Illustrator.ExportOptionsPNG8")

If appRef.Documents.Count > 0 Then


png8ExportOptions.AntiAliasing = False
png8ExportOptions.Interlaced = True
Set docRef = appRef.ActiveDocument
Call docRef.Export (dest, 4, png8ExportOptions) ' 4 = aiPNG8
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsPNG24 64

ExportOptionsPNG24
Options that may be supplied when exporting a document as a 24-bit PNG file. See the Document Export
method for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

ExportOptionsPNG24 properties

Property Value type What it is


AntiAliasing Boolean If true, the exported image is anti-aliased. Default: true
Application Application Read-only. The Illustrator Application object.
ArtBoardClipping Boolean If true, the exported image is clipped to the art board.
Default: false
HorizontalScale Double The horizontal scaling factor applied to the exported image,
where 100.0 is 100%. Default: 100.0
Matte Boolean If true, the art board is matted with a color. Default: true
MatteColor RGBColor The color to use when matting the art board. Default: white
SaveAsHTML Boolean If true, the exported image is saved with an accompanying
HTML file. Default: false
Transparency Boolean If true, the exported image uses transparency. Default: true
VerticalScale Double The vertical scaling factor applied to the exported image,
where 100.0 is 100%. Default: 100.0
CHAPTER 1: VBScript Object Reference ExportOptionsPNG24 65

Exporting to PNG24

This example exports the current document as a PNG24 file with specific options.
'Exports current document as PNG24 to dest
'dest contains the full path and file name to save to

Sub exportFileAsPNG (dest)


Set appRef = CreateObject("Illustrator.Application")
Set png24ExportOptions = CreateObject("Illustrator.ExportOptionsPNG24")

If appRef.Documents.Count > 0 Then


png24ExportOptions.AntiAliasing = False
png24ExportOptions.Transparency = False
Set docRef = appRef.ActiveDocument
Call docRef.Export (dest, 5, png24ExportOptions) ' 5 = aiPNG24
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsSVG 66

ExportOptionsSVG
Options that may be supplied when exporting a document as a SVG file. See the Document Export method
for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

ExportOptionsSVG properties

Property Value type What it is


Application Application Read-only. The Illustrator
Application object.

ArtboardRange String A range of artboards to save, if


SaveMultipleArtboards is
true. A comma-delimited list of
artboard names., or the empty
string to save all artboards.
Default: empty string
Compressed Boolean If true, the exported file is
compressed. Default: false
CoordinatePrecision Long The decimal precision for
element coordinate values.
Range: 1 to 7. Default: 3
CSSProperties AiSVGCSSPropertyLocation Specifies how the CSS
properties of the document are
included in the exported file
DocumentEncoding AiSVGDocumentEncoding Specifies how the text in the
document is encoded. Default: 1
DTD AiSVGDTDVersion The SVG version to which the file
should conform.
Default: 2
EmbedRasterImages Boolean If true, all raster images
contained in the document are
embedded in the saved file.
FontSubsetting AiSVGFontSubsetting The font glyphs included in the
export file.
FontType AiSVGFontType The type of font included in the
exported file. Default: 1
aiCEFFont
CHAPTER 1: VBScript Object Reference ExportOptionsSVG 67

Property Value type What it is


IncludeFileInfo Boolean If true, the XMP (Extensible
Metadata Platform) metadata
are included in the output file.
Default: false
IncludeUnusedStyles Boolean If true, save unused styles in the
exported file. Default: false
IncludeVariablesAndDatasets Boolean If true, Variables and
Datasets are included. Default:
false

OptimizeForSVGViewer Boolean If true, the Adobe namespace is


included. Default: false
PreserveEditability Boolean If true, preserve Illustrator
editing capability when
exporting the document.
Default: false
SaveMultipleArtboards boolean If true, save the artboards
specified by artboardRange in
the exported file. Default: false
Slices Boolean If true, preserve slice data in
exported document. Default:
false

SVGAutoKerning Boolean If true, SVG automatic kerning


is allowed in the file. Default:
false

SVGTextOnPath Boolean If true, the SVG text-on-path


construct is allowed in the file.
Default: false

Exporting to SVG
'Exports the current document as SVG to dest
'dest contains the full path and file name to save to

Sub exportFileAsSVG (dest)


Set appRef = CreateObject("Illustrator.Application")
Set svgExportOptions = CreateObject("Illustrator.ExportOptionsSVG")

If appRef.Documents.Count > 0 Then


svgExportOptions.EmbedRasterImages = True
svgExportOptions.FontSubsetting = 7 'aiAllGlyphs
Set docRef = appRef.ActiveDocument
Call docRef.Export (dest, 3, svgExportOptions) ' 3 = aiSVG
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsTIFF 68

ExportOptionsTIFF
Options that may be supplied when exporting a document as a TIFF file. See the Document Export method
for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include a file extension in the file specification.

All properties are optional.

ExportOptionsTIFF properties

Property Value type What it is


AntiAliasing boolean If true, the exported image should be anti-aliased.
Default: true
ArtboardRange string If SaveMultipleArtboards is true, this is
considered for multi-asset extraction, which
specifies the artboard range. An empty string
extracts all the artboards. Default: empty string
ByteOrder AiTIFFByteOrder The byte order to use in the new file.
ImageColorSpace AiImageColorSpace The color space of the exported file.
Default: aiImageRGB
IZWCompression boolean If true, use IZW compression in the new file.
Resolution number (double) Resolution of the exported file in dots per inch
(dpi). Range: 72.0 to 2400.0. Default: 150.0
SaveMultipleArtboards boolean If true, all artboards or range of artboards are
saved. Default: false

Exporting to TIFF format


'Exports the current document as TIFF to dest
'dest contains the full path and file name to save to

Sub exportFileAsTIFF (dest)


Set appRef = CreateObject("Illustrator.Application")
Set tiffExportOptions = CreateObject("Illustrator.ExportOptionsTIFF")

If appRef.Documents.Count > 0 Then


tiffExportOptions.imageColorSpace = 2 'aiImageRGB
tiffExportOptions.resolution = 150
tiffExportOptions.lZWCompression = true

Set docRef = appRef.ActiveDocument


Call docRef.Export (dest, 9, tiffExportOptions) ' 9 = aiTIFF
End If
End Sub
CHAPTER 1: VBScript Object Reference ExportOptionsWebP 69

ExportOptionsWebP
Options for exporting a document as a WebP fileSee the Document Export method for additional details.

When you export a document, the appropriate file extension is appended automatically. You should not
include any file extension in the file specification.

All properties are optional.

ExportOptionsWebP properties

Property Value type What it is


antiAliasing AntiAliasingMet The type of antialiasing method of the exported
hod image. Default - AntiAliasingMethod.TypeOptimized.
losslessCompression boolean Indicates whether to have lossless or lossy
compression.
imageQuality number (long) In lossy compression, indicates the quality of the
exported image. Default - 100 Range - 0 to 100
isTransparent boolean If true, the exported image use transparency. Default -
true.
embedICCProfile boolean If true, an ICC profile should be embedded in the
exported file. Default - true.
pPI number (double) Resolution of the exported file in pixels per inch (ppi).
Default - 72.0 Range - 4.0 to 2400.0
matteColor RGBColor Matte color to be used for background if image is not
transparent
typename string The class name of the referenced object.

Exporting to WebP format


//Exports current document to dest as a WebP file with specified options, dest contains
the full path including the file name

function exportFileToWebP (dest) {


if ( app.documents.length > 0 ) {
var exportOptions = new ExportOptionsWebP();
var type = ExportType.WEBP;
var fileSpec = new File(dest);
exportOptions.isTransparent = true;
exportOptions.imageQuality = 100;
app.activeDocument.exportFile( fileSpec, type, exportOptions );
}
}
CHAPTER 1: VBScript Object Reference FreeHandFileOptions 70

FreeHandFileOptions
Options for opening a FreeHand file.

FreeHandFileOptions properties

Property Value type What it is


Application Applicatio Read-only. The Illustrator Application object.
n

ConvertTextToOutlines Boolean If true, converts all text to outlines. Default: false


ImportSinglePage Boolean If true, imports only the page specified in the
PageToOpen property. Default: true

PageToOpen Long The number of the page to import when opening a


multipage document. Valid only when
ImportSinglePage is true.

Parent Document Read-only. The document that contains this object.


CHAPTER 1: VBScript Object Reference FXGSaveOptions 71

FXGSaveOptions
Specifies options which may be supplied when saving a document as an FXG file. All properties are
optional.

FXGSaveOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator
Application object.

ArtboardRange string If SaveMultipleArtboards is


true, this is considered for
multi-asset extraction, which
specifies the artboard range. An
empty string extracts all the
artboards. Default: empty string
BlendsPolicy AiBlendsExpandPolicy The policy used by FXG to expand
blends. Default:
AiAutomaticallyConvertBlends

DownsampleLinkedImages boolean If true, linked images are


downsampled (at 72 dpi).
Default: false
FiltersPolicy AiFiltersPreservePolicy The policy used by FXG to preserve
filters. Default: 3
GradientsPolicy AiGradientsPreservePolicy The policy used by FXG to preserve
gradients. Default:
4aiAutomaticallyConvertGradi
ents

IncludeUnusedSymbols boolean If true, unused symbols are


included. Default: false
PreserveEditingCapabilities boolean If true, the editing capabilities of
FXG are preserved. Default: true
SaveMultipleArtboards boolean If true, all artboards or range of
artboards are saved. Default: false
TextPolicy AiTextPreservePolicy The policy used by FXG to preserve
text. Default:
4aiAutomaticallyConvertText

Version AiFXGVersion The version of the FXG file format


to create. Default: 2
CHAPTER 1: VBScript Object Reference Gradient 72

Gradient
A gradient definition contained in a document. A script can create new gradients.

Gradient properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
GradientStops GradientStops Read-only. The gradient stops contained in this gradient.
Name String The gradient’s name.
Parent Document Read-only. The document that contains this gradient.
Type AiGradientType The kind of the gradient, either radial or linear.

Gradient methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Creating and applying a gradient


'Creates a new gradient in the current document with 2
'gradient stops, then applies the gradient to the front-
'most path item

Set appRef = CreateObject("Illustrator.Application")


Set frontDocument = appRef.ActiveDocument

'Create a color for both ends of the gradient


Set startColor = CreateObject("Illustrator.RGBColor")
Set endColor = CreateObject("Illustrator.RGBColor")

startColor.Red = 0
startColor.Green = 100
startColor.Blue = 255
endColor.Red = 220
endColor.Green = 0
endColor.Blue = 100

'Create a new gradient


'new gradients always have 2 stops
Set newGradient = frontDocument.Gradients.Add
newGradient.Name = "Gradient created from script"
newGradient.Type = 1 'aiLinearGradient

'Modify the first gradient stop.


Set locationSpecification = newGradient.GradientStops(1)
CHAPTER 1: VBScript Object Reference Gradient 73

locationSpecification.RampPoint = 30
locationSpecification.MidPoint = 60
locationSpecification.Color = startColor

'Modify the last gradient stop.


'The MidPoint for the last gradient stop is ignored
Set locationSpecification = newGradient.GradientStops(2)
locationSpecification.RampPoint = 80
locationSpecification.Color = endColor

'construct an Illustrator.GradientColor object referring to the


'newly created gradient
Set ColorOfGradient = CreateObject("Illustrator.GradientColor")
ColorOfGradient.Gradient = newGradient

'now get the frontmost path item and


'apply the new gradient as its fill
Set topPath = frontDocument.PathItems(1)
topPath.Filled = True
topPath.fillColor = ColorOfGradient
CHAPTER 1: VBScript Object Reference GradientColor 74

GradientColor
A gradient color specification, used in conjunction with the Gradient property of the Color specification.

A script can create a GradientColor using a reference to an existing gradient in the application. If no
existing gradient object is referenced, a default gradient is supplied. An origin is used to specify the center
point of the gradient in this specific gradient color. Single values are used to specify the gradient vector
angles and lengths. A matrix may be specified to further transform the gradient color.

GradientColor properties

Property Value type What it is


Angle Double The gradient vector angle in degrees.
Application Application Read-only. The Illustrator Application object.
Gradient Gradient Reference to the object defining the gradient.
HiliteAngle Double The gradient hilite vector angle in degrees.
HiliteLength Double The gradient hilite vector length.
Length Double The gradient vector length.
Matrix Matrix An additional transformation matrix to manipulate the
gradient path.
Origin Variant Array of The gradient vector origin.
2 Doubles

Changing a gradient color


'Creates a new RGB color then applies it as the color
'at the first gradient stop of the first gradient

Set appRef = CreateObject("Illustrator.Application")

Set frontDocument = appRef.Documents.Add(1) ' aiDocumentRGBColor

'Get a reference to the gradient that you want to change


Set firstGradient = frontDocument.Gradients(1)

'Create the new color


Set startColor = CreateObject("Illustrator.RGBColor")
startColor.Red = 0
startColor.Green = 255
startColor.Blue = 0

firstGradient.GradientStops(1).Color = startColor
CHAPTER 1: VBScript Object Reference Gradients 75

Gradients
A collection of Gradient objects in a document.

Gradients properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The parent document of this object.

Gradients methods

Method Returns What it does


Add Gradient Creates a new object
()

Index Long Returns the index position of the object within the collection.
(item as Gradient)

Item Gradient Returns an object reference to the object identified by itemKey


(itemKey) (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()

Removing a gradient
'Deletes the first gradient in the current document

Set appRef = CreateObject("Illustrator.Application")


Set frontDocument = appRef.ActiveDocument

'Get a reference to the gradient that you want to delete


Set gradientToDelete = frontDocument.Gradients(1)

'Now delete the gradient using the collection


frontDocument.Gradients.Remove gradientToDelete
CHAPTER 1: VBScript Object Reference GradientStop 76

GradientStop
A gradient stop definition contained in a specific gradient. Represents a point on a gradient that specifies a
color change. For an example, see GradientColor.

GradientStop properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Color Color info The color linked to this gradient stop.
Midpoint Double The distance between two GradientStops, in percentage.
Range: 13.0 to 87.0
Opacity Double The opacity value for the gradient stop. Range: 0.0 to 100.0
Parent Document Read-only. The document that contains this gradient stop.
RampPoint Double The location of the color in the blend. Range: 0.0 to 100.0,
where 100.0 is 100%

GradientStop methods

Method Returns What it does


Delete Nothing Deletes the object.
()
CHAPTER 1: VBScript Object Reference GradientStops 77

GradientStops
A collection of GradientStop objects in a specific gradient.

GradientStops properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

GradientStops methods

Method Returns What it does


Add GradientStop Creates a new object
()

Index Long Returns the index position of the object within the
(item as GradientStop) collection.
Item GradientStop Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference GradientStops 78

Adding a new gradient stop


'Adds a new gray gradient stop to an existing gradient

Set appRef = CreateObject("Illustrator.Application")


Set frontDocument = appRef.ActiveDocument

'Get a reference to the gradient that you want to change


Set changeGradient = frontDocument.Gradients(1)

'Get a reference to the gradient stop that is the last one


'before you add a new gradient stop
originalCount = changeGradient.GradientStops.Count
Set lastStop = changeGradient.GradientStops(originalCount)

'add the new gradient stop


Set newStop = changeGradient.GradientStops.Add

'Set the values of the new gradient stop. move the original
'last gradient stop a bit to the left, and
'insert the new gradient stop at the old gradient stop's position
newStop.RampPoint = lastStop.RampPoint
lastStop.RampPoint = lastStop.RampPoint - 10

'Create a new color to apply to the newly created gradient stop


'choose a Gray tint value of 70%
Set newStopColor = CreateObject("Illustrator.GrayColor")
newStopColor.Gray = 70
newStop.Color = newStopColor
CHAPTER 1: VBScript Object Reference GraphicStyle 79

GraphicStyle
Each graphic style defines a set of appearance attributes that you can apply to PageItem objects. Graphic
styles are contained in documents. Scripts cannot create new graphic styles.

GraphicStyle properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The GraphicStyle name.
Parent Document Read-only. The document that contains this object.

GraphicStyle methods

Method Returns What it does


ApplyTo Nothing Applies the GraphicStyle to a specific art item.
(artItem as PageItem)

MergeTo Nothing Merges this style into the current styles of a specified art item.
(artItem as PageItem)

Delete Nothing Deletes the object.


()

Applying a graphic style

This example duplicates and groups the current selection, applying the second graphic style in the
document to the items in the group.
'Creates a new group item, adds a duplicate of each
'selected item to the group then applies a graphic style
'to the group

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


If Not IsEmpty(appRef.Selection) Then
mySelection = appRef.Selection
endIndex = UBound(mySelection)
startIndex = LBound(mySelection)
Set newGroup = appRef.ActiveDocument.GroupItems.Add
For i = startIndex To endIndex
Set artItem = mySelection(i)
Set dupItem = artItem.Duplicate(newGroup, aiPlaceAtEnd)
appRef.ActiveDocument.GraphicStyles(2).ApplyTo dupItem
Next
End If
End If
CHAPTER 1: VBScript Object Reference GraphicStyles 80

GraphicStyles
A collection of graphic styles in a document.

GraphicStyles properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

GraphicStyles methods

Method Returns What it does


Index Long Returns the index position of the object within the
(item as GraphicStyle) collection.
Item GraphicStyle Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Counting graphic styles


'Counts the number of graphic styles in the current document
'and stores in numStyles

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


numStyles = appRef.ActiveDocument.GraphicStyles.Count
End If
CHAPTER 1: VBScript Object Reference GraphItem 81

GraphItem
A graph artwork item. Scripts cannot create new graph items.

GraphItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this GraphItem used to create a knockout, and if
so, what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
ContentVariable Variable The content variable bound to this GraphItem.

It is not necessary to set the type of the


ContentVariable before binding. Illustrator
automatically sets the type to AiGraph.
ControlBounds Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, the GraphItem is editable.
GeometricBounds Variant Array of Read-only. The bounds of the GraphItem excluding
4 Doubles stroke width.
Height Double The height of the GraphItem, calculated on the
GeometricBounds.

Hidden Boolean If true, this GraphItem is hidden.


IsIsolated Boolean If true, this GraphItem is isolated.
Layer Layer Read-only. The Layer to which this GraphItem
belongs.
Left Double The position of the left side of the GraphItem (in
points, measured from the left side of the page).
Locked Boolean If true, this GraphItem is locked.
Name String The name of this GraphItem.
Note String The note assigned to this GraphItem.
Opacity Double The opacity of the GraphItem. Range: 0.0 to 100.0
Parent Layer or Read-only. The parent of this GraphItem.
GridRepeatConfig

Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item in the format [x, y]. Does not include stroke
weight.
Selected Boolean If true, this GraphItem is selected.
CHAPTER 1: VBScript Object Reference GraphItem 82

Property Value type What it is


Sliced Boolean If true, this GraphItem is sliced. Default: false
Tags Tags Read-only. The collection of Tags contained in this
GraphItem.

Top Double The position of the top of the item (in points,
measured from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this
GraphItem.

VisibilityVariable Variable The visibility variable bound to this GraphItem.

It is not necessary to set the type of the


VisibilityVariable before binding. Illustrator
automatically sets the type to AiVisibility.
VisibleBounds Variant Array of Read-only. The visible bounds of the GraphItem
4 Doubles including stroke width.
Width Double The width of the GraphItem, based on the
GeometricBounds.

WrapInside Boolean If true, the text frame object is wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object
(text frame must be above the object).
ZOrderPosition Long Read-only. The position of this GraphItem within the
stacking order of the GroupItem or Layer (Parent)
that contains the GraphItem.

GraphItem methods

Method Returns What it does


Copy Nothing Copies the GraphItem to the
() clipboard; the associated document
must be the frontmost document.
Cut Nothing Cuts the GraphItem to the clipboard;
() the associated document must be
the frontmost document.
Delete Nothing Deletes the object.
()
CHAPTER 1: VBScript Object Reference GraphItem 83

Method Returns What it does


Duplicate Object Duplicates the art item, optionally
([relativeObject as Object], specifying the location and position
[insertionLocation as for the copy.
AiElementPlacement])

Move Nothing Moves the art item, specifying the


(relativeObject as Object, new location and position.
insertionLocation as
AiElementPlacement)

Resize Nothing Scales the GraphItem where scaleX


(scaleX as Double, is the horizontal scaling factor and
scaleY as Double, scaleY is the vertical scaling factor.
[, changePositions as Boolean]
100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[,scaleAbout as AiTransformation])

Rotate Nothing Rotates the GraphItem relative to the


(angle as Double, current rotation; counter-clockwise if
[, changePositions as Boolean] the Angle value is positive, clockwise
[, changeFillPatterns as Boolean]
if the value is negative.
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the GraphItem by


(transformationMatrix as Matrix, applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the GraphItem relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset and
[, transformObjects as Boolean]
deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the GraphItem’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.
CHAPTER 1: VBScript Object Reference GraphItem 84

Rotating graph items


'Rotates each graph item in the current document 90 degrees.

Set appRef = CreateObject("Illustrator.Application")

'Rotate each graph item 90 degrees


For Each graphRef In appRef.ActiveDocument.GraphItems
graphRef.Rotate 90
Next
appRef.Redraw
CHAPTER 1: VBScript Object Reference GraphItems 85

GraphItems
A collection of GraphItem objects.

GraphItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

GraphItems methods

Method Returns What it does


Index Long Returns the index position of the object within the collection.
(item as GraphItem)

Item GraphItem Returns an object reference to the object identified by


(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference GrayColor 86

GrayColor
A grayscale color specification used to apply a gray color to a layer or art item.

GrayColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Gray Double The tint of the gray. Range: 0.0 to 100.0, where 0.0 is black and
100.0 is white.

Changing word color to gray


'Sets the fill color of the first word in the document to gray

Set appRef = CreateObject("Illustrator.Application")


Set textColor = CreateObject("Illustrator.GrayColor")

'Get a reference to the first word in the active document


Set text = appRef.ActiveDocument.TextFrames(1).TextRange
Set firstWord = text.Words(1)

'Create the new color


textColor.Gray = 45

firstWord.CharacterAttributes.fillColor = textColor
CHAPTER 1: VBScript Object Reference GridRepeatConfig 87

GridRepeatConfig
Specifies grid repeat art configuration options.

GridRepeat properties

Property Value type What it is


Applicatio Application Read-only. The Illustrator Application object.
n

columnFlip AiRepeatGridShi Column flip type of grid repeat art.


Type ftFlipType Default value: NoSF
horizontal double Spacing between each rows.
Spacing
Default value: 10
patternTyp AiRepeatGridShi Shifts type of grid repeat art.
e ftFlipType Default value: NoSF
rowFlipTyp AiRepeatGridShi Row flip type of grid repeat art.
e ftFlipType Default value: NoSF
verticalSp double Spacing between each columns.
acing
Default value: 10
CHAPTER 1: VBScript Object Reference GridRepeatItem 88

GridRepeatItem
Specifies grid repeat item options.

GridRepeatItem properties

Property Value type What it is


parent object Read-only. The object’s container.
GridConfig GridRepeatConfig Read-only. Grid repeat configuration for repeat
art.
URL String The value of the Adobe URL tag assigned to this
path item.
Width Double The width of the grid repeat item, based on the
GeometricBounds.

GridRepeatItem methods

Method Returns What it does

duplicate GridRepeatItem Creates a duplicate of the selected object.


([relativeObject as
object]
[,insertionLocation
as
Object])

move GridRepeatItem Moves the object.


(relativeObject as
Object,
insertionLocation as
AiElementPlacement)

setGridConfiguration String Updates the grid repeat art.


(config as
GridRepeatConfig,
state as
AiGridRepeatUpdate)
CHAPTER 1: VBScript Object Reference GridRepeatItems 89

GridRepeatItems
Specifies a collection of grid repeat items.

GridRepeatItems properties

Property Value type What it is

Application Application Read-only. The Illustrator Application object.

parent object Read-only. The object’s container.

count long Read-only. The number of elements in the


collection.

GridRepeatItems methods

Method Returns What it does

Add(SourceArt as GridRepeatItem Creates a grid repeat art


Object,
[Config as
GridRepeatConfig])

RemoveAll Nothing Deletes all elements.


()
CHAPTER 1: VBScript Object Reference AiGridRepeatUpdate 90

AiGridRepeatUpdate
Represents which property of grid repeat gets updated.

GridRepeatUpdate properties

Property Value type What it is

AiGridAll constant Updates all the properties of grid repeat art.

AiHorizontalSpaci constant Updates spacing between rows of grid repeat


ng
artwork.

AiHorizontalSpaci constant Updates spacing between columns of grid repeat


ng
artwork.
CHAPTER 1: VBScript Object Reference GroupItem 91

GroupItem
A grouped set of art items. Group items can contain all of the same page items that a layer can contain,
including other nested groups.

Paths contained within a group or compound path in a document are returned as individual paths when a
script asks for the paths contained in the document. However, paths contained in a group or compound
path are not returned when a script asks for the paths in a layer which contains the group or compound
path.

GroupItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so,
what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
Clipped Boolean If true, the GroupItem is clipped to the clipping
mask.
CompoundPathItems CompoundPathItems Read-only. The CompoundPathItems contained in
this GroupItem.
ControlBounds Variant Array of Read-only. The bounds of the object including
4 Doubles stroke width and controls.
Editable Boolean Read-only. If true, this GroupItem is editable.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding
4 Doubles stroke width.
GraphItems GraphItems Read-only. The raster items contained in this
GroupItem.

GroupItems GroupItems Read-only. The GroupItems contained in this


GroupItem.

Height Double The height of the GroupItem, based on the


GeometricBounds.

Hidden Boolean If true, this GroupItem is hidden.


IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer to which this GroupItem
belongs.
Left Double The position of the left side of the GroupItem (in
points, measured from the left side of the page).
LegacyTextItems LegacyTextItems Read-only. The legacy text items in the group.
Locked Boolean If true, this GroupItem is locked.
CHAPTER 1: VBScript Object Reference GroupItem 92

Property Value type What it is


MeshItems MeshItems Read-only. The MeshItems contained in this
GroupItem.

Name String The name of this GroupItem.


NonNativeItems NonNativeItems Read-only. The non-native art items in this group.
Note String The note assigned to this GroupItem.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
PageItems PageItems Read-only. The PageItems contained in this
GroupItem.

Parent Document Read-only. The document that contains this


GroupItem.

PathItems PathItems Read-only. The PathItems contained in this


GroupItem.

PlacedItems PlacedItems Read-only. The PlacedItems contained in this


GroupItem.

PluginItems PluginItems Read-only. The PluginItems contained in this


GroupItem.

Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item in the format [x, y]. Does not include stroke
weight.
RasterItems RasterItems Read-only. The RasterItems contained in this
GroupItem.

Selected Boolean If true, this GroupItem is selected.


Sliced Boolean If true, this GroupItem is sliced. Default: false
SymbolItems SymbolItems Read-only. The SymbolItems contained in this
GroupItem.

Tags Tags Read-only. The tags contained in this GroupItem.


TextFrames TextFrames Read-only. The TextFrame objects contained in this
GroupItem.

Top Double The position of the top of the item (in points,
measured from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this
GroupItem.

VisibilityVariable Variable The Variable bound to this GroupItem.


VisibleBounds Variant Array of Read-only. The visible bounds of the GroupItem
4 Doubles including stroke width.
Width Double The width of the GroupItem, based on the
GeometricBounds.
CHAPTER 1: VBScript Object Reference GroupItem 93

Property Value type What it is


WrapInside Boolean If true, the text frame object are wrapped inside
this object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object
(text frame must be above the object).
ZOrderPosition Long Read-only. The position of this group item within
the stacking order of the group or layer (Parent)
that contains this group item.

GroupItem methods

Method Returns What it does


Copy Nothing Copies the GroupItem to the
() clipboard; the associated
document must be the frontmost
document.
Cut Nothing Cuts the GroupItem to the
() clipboard; the associated
document must be the frontmost
document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object], specifying the location and
[insertionLocation as AiElementPlacement]) position for the copy.
Move Nothing Moves the art item, specifying the
(relativeObject as Object, new location and position.
insertionLocation as AiElementPlacement)

Paste Nothing Inserts the contents of the


() clipboard at the beginning of the
GroupItem. You may only paste
into a group that is contained in
the active document.
Resize Nothing Scales the art item where scaleX
(scaleX as Double, is the horizontal scaling factor and
scaleY as Double, scaleY is the vertical scaling
[, changePositions as Boolean]
factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])
CHAPTER 1: VBScript Object Reference GroupItem 94

Method Returns What it does


Rotate Nothing Rotates the art item relative to the
(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the art item by


(transformationMatrix as Matrix applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative to


([deltaX as Double] the current position, where
[, deltaY as Double] deltaX is the horizontal offset and
[, transformObjects as Boolean]
deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.

Creating a group

It is easy to modify all of the objects contained in a group. This example demonstrates how to simplify your
operations on multiple objects by creating a group to contain them.
'Creates a new group in the current document, containing
'a path item, and a text item

Set appRef = CreateObject("Illustrator.Application")

'Create a new group in the active document.


'This will be the group that holds the new triangle art
Set triangleGroup = appRef.ActiveDocument.GroupItems.Add

'Create a triangle and add text inside the group


Set trianglePath = triangleGroup.PathItems.Add
trianglePath.SetEntirePath Array(Array(100, 100), Array(300, 100), Array(200,
Tan(1.0471975) * 100 + 100))

Set captionText = triangleGroup.TextFrames.Add


captionText.Position = Array(100, 100)
captionText.Contents = "A triangle"
CHAPTER 1: VBScript Object Reference GroupItems 95

GroupItems
A collection of GroupItem objects.

GroupItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

GroupItems methods

Method Returns What it does


Add GridRepeat Creates a new object.
() Config

CreateFromFile GridRepeat Creates a GroupItem from a vector graphics file.


(imagefile as String) Config

Index Long Returns the index position of the object within the
(item as GroupItem) collection.
Item GridRepeat Returns an object reference to the object identified by
(itemkey) Config itemkey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Importing a file using GroupItems

The following script shows how you can import a JPEG document using the CreateFromFile function.
Before running this script you have to create a one-page PDF file and put it in the location.
C:\temp\AiExport.jpg.

'Adds a new group item to the document from a file (dest)


'dest contains the full path and file name of the file

Sub embedPDF (dest)


Set appRef = CreateObject("Illustrator.Application")
Set importedGroup = appRef.ActiveDocument.GroupItems.CreateFromFile (dest)
End Sub
CHAPTER 1: VBScript Object Reference IllustratorSaveOptions 96

IllustratorSaveOptions
Options that can be supplied when saving a document as an Illustrator file with the document SaveAs
method.

IllustratorSaveOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtboardRange string If SaveMultipleArtboards is true (which is valid
only for Illustrator 13 or earlier), the document is
considered for multi-asset extraction, which
specifies an artboard range. An empty string
extracts all artboards. Default: empty string
Compatibility AiCompatibility Version of the Illustrator file format to create.
Default: 24’ aiIllustrator24
Compressed Boolean (Illustrator version 10 or later) If true, the saved file
is compressed. Default: true
EmbedICCProfile Boolean If true, an ICC profile is embedded in the saved file.
EmbedLinkedFiles Boolean If true, linked image files are included in the saved
document (only valid for SaveOptions that specify
an Illustrator compatibility of version 7 or later).
FlattenOutput AiOutputFlattening Specifies how transparency is flattened for file
formats older than Illustrator 9.
FontSubsetThreshold Double Include a subset of fonts when less than this
percentage of characters is used in the document
(valid for Illustrator 9 or newer file format).
PDFCompatible Boolean If true, save as a PDF compatible file (version 10 or
later). Default: true
SaveMultipleArtboards boolean If true, all artboards or range of the artboards are
saved. Valid for Illustrator 13 or earlier.
CHAPTER 1: VBScript Object Reference IllustratorSaveOptions 97

Saving to Illustrator 8 format

This example illustrates how to save the frontmost document as Illustrator 8 format. Because the
document is saved as a version earlier than 9, the example specifies how to convert opacity by breaking
paths up in to sub-paths to preserve the appearance of the illustration.
'Saves current document in Illustrator format to dest with certain options
'specified in the script, dest contains the full path and file name to save to

Sub exportfileToAi (dest)


Set appRef = CreateObject("Illustrator.Application")
Set saveOptions = CreateObject("Illustrator.IllustratorSaveOptions")
saveOptions.Compatibility = 8'aiIllustrator8
saveOptions.FlattenOutput = 1'aiPreserveAppearance
appRef.Documents(1).SaveAs dest, saveOptions
End Sub
CHAPTER 1: VBScript Object Reference ImageCaptureOptions 98

ImageCaptureOptions
Options for image capture, used with the ImageCapture method. All properties are optional.

ImageCaptureOptions properties

Property Value type What it is


AntiAliasing Boolean If true, the image result is anti-aliased. Default: false
Application Application Read-only. The Illustrator Application object.
Matte Boolean If true, the artboard is matted with a color. Default: false
MatteColor RGBColor The color to use for the artboard matte. Default: white
Resolution Double The resolution of the captured image file in points-per-inch (PPI),
in the range 72.0 to 2400.0. Default: 150
Transparency Boolean If true, the image result is transparent. Default: false
CHAPTER 1: VBScript Object Reference Ink 99

Ink
Provides information about the ink name and related information.

Ink properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
InkInfo InkInfo The ink information.
Name String The ink’s name.
CHAPTER 1: VBScript Object Reference InkInfo 100

InkInfo
Specifies ink properties.

InkInfo properties

Property Value type What it is


Angle Double The ink’s screen angle in degrees. Range: -360 to 360
Application Application Read-only. The Illustrator Application object.
CustomColor Object The color of the custom ink.
Density Double The neutral density. Minimum: 0.0
DotShape String The dot shape name.
Frequency Double The ink’s frequency. Range: 0.0 to 1000.0
Kind AiInkType The ink type.
PrintingStatus AiInkPrintStatus The ink printing status.
Trapping AiTrappingType The trapping type.
TrappingOrder Long The order of trapping for the ink. Range: 1 to 4 for CMYK
CHAPTER 1: VBScript Object Reference InkInfo 101

List inks in a document


'Gets the details of each ink in this document
'and displays them in a text frame

Set appRef = CreateObject("Illustrator.Application")

'create a new document and simple text frame


Set docRef = appRef.Documents.Add()
Set textRef = docRef.TextFrames.Add()
textRef.Top = docRef.Height - 100
textRef.Left = 100

'collect data from each Ink and InkInfo object


For Each inkRef In appRef.ActiveDocument.InkList
sInks = sInks & inkRef.Name
sInks = sInks & vbCrLf & vbTab
sInks = sInks & "Frequency = " & inkRef.InkInfo.Frequency
sInks = sInks & vbCrLf & vbTab
sInks = sInks & "Density = " & inkRef.InkInfo.Density
sInks = sInks & vbCrLf
Next
textRef.Contents = sInks
appRef.Redraw
CHAPTER 1: VBScript Object Reference InsertionPoint 102

InsertionPoint
A location between characters, used to insert new text objects. An insertion point is contained in an
InsertionPoints collection.

InsertionPoint properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Characters Characters Read-only. All of the characters in the text
range.
Lines Lines Read-only. All the lines in this text range.
Paragraphs Paragraphs Read-only. All of the paragraphs in this text
range.
Parent Object Read-only. The object’s container.
Story Story Read-only. The story of the text range.
TextRanges TextRanges Read-only. All of the text in this text range.
Words Words Read-only. All of the words in this text range.
CHAPTER 1: VBScript Object Reference InsertionPoints 103

InsertionPoints
A collection of InsertionPoint objects.

InsertionPoints properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent TextFrame Read-only. The object’s container.

InsertionPoints methods

Method Returns What it does


Index Long Returns the index position of the object within the
(itemPtr as TextRange) collection.
Item InsertionPoint Gets an element from the collection by itemKey
(itemKey) (name or index).

Using insertion point to add spaces


'Creates a new document, adds a text frame then
'uses insertion points to add a space between all characters

Set appRef = CreateObject("Illustrator.Application")

'create a new document and text frame


Set docRef = appRef.Documents.Add()
Set textRef = docRef.TextFrames.Add()
textRef.Contents = "Wouldn't you rather be scripting?"
textRef.Top = 400
textRef.Left = 100
textRef.TextRange.CharacterAttributes.Size = 20
appRef.Redraw

i = 2
Do While (i < textRef.InsertionPoints.Count)
textRef.InsertionPoints(i).Characters.Add (" ")
i = i + 2
Loop
CHAPTER 1: VBScript Object Reference LabColor 104

LabColor
A color specification in the CIE Lab color space, used where a color info object is required.

LabColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
A Double The a (red-green) color value. Range -128.0–128.0. Default: 0.0
B Double The b (yellow-blue) color value. Range -128.0–128.0. Default: 0.0
L Double The l (lightness) color value. Range -128.0–128.0. Default: 0.0
CHAPTER 1: VBScript Object Reference Layer 105

Layer
A layer in an Illustrator document. Layers may contain nested layers, which are called sublayers in the user
interface.

Layer object contains all of the page items in the layer as elements. Your script can access PageItems as
elements of either the Layer object or as elements of the Document object. Only those page items in that
layer can be accessed through the Layer object. To see page items in different layers, access them through
the document.

Layer properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this Layer used to create a knockout, and if so,
what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
Color RGBColor The Layer’s selection mark color.
CompoundPathItems CompoundPathItems Read-only. The CompoundPathItems contained in
this layer.
DimPlacedImages Boolean If true, placed images are rendered as dimmed in
this layer.
GraphItems GraphItems Read-only. The GraphItems collection contained in
this layer.
GroupItems GroupItems Read-only. The GroupItems contained in this layer.
HasSelectedArtwork Boolean If true, an object in this Layer has been selected;
setting this property to false deselects all objects in
the layer.
IsIsolated Boolean If true, this Layer is isolated.
Layers Layers Read-only. The Layers contained in this layer.
LegacyTextItems LegacyTextItems Read-only. The legacy text items contained in this
layer.
Locked Boolean If true, this layer is editable.
MeshItems MeshItems Read-only. The MeshItems contained in this layer.
Name String The name of this layer.
NonNativeItems NonNativeItems The non-native art items in this layer.
Opacity Double The opacity of the layer. Range: 0.0 to 100.0
PageItems PageItems Read-only. The PageItems contained in this layer.
CHAPTER 1: VBScript Object Reference Layer 106

Property Value type What it is


Parent Document or Layer Read-only. The document or Layer that contains this
layer.
PathItems PathItems Read-only. The PathItems contained in this layer.
PlacedItems PlacedItems Read-only. The PlacedItems contained in this layer.
PluginItems PluginItems Read-only. The PluginItems contained in this layer.
Preview Boolean If true, this layer is displayed using preview mode.
Printable Boolean If true, this layer is printed when printing the
document.
RasterItems RasterItems Read-only. The RasterItems contained in this layer.
Sliced Boolean If true, this layer is sliced.
SymbolItems SymbolItems Read-only. The SymbolItems contained in this layer.
TextFrames TextFrames Read-only. The TextFrames contained in this layer.
Visible Boolean If true, this layer is visible.
ZOrderPosition Long Read-only. The position of this layer within the
stacking order of Layers in the document

Layer methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Move Nothing Moves the art item, specifying the


(relativeObject as Object, new location and position.
insertionLocation as AiElementPlacement)
Does not change the position of the
object on the art board, but
changes the order in which
Illustrator draws the objects, and
the containment hierarchy. Places
the object in the specified container,
behind all other such objects.
Paste Nothing Pastes the contents of the clipboard
() into the Layer; if the associated
document is the frontmost then all
pasted objects remain selected after
the paste.
ZOrder Nothing Arranges the Layer’s position in the
(zOrderCmd as AiZOrderMethod) stacking order of Layers in this
document
CHAPTER 1: VBScript Object Reference Layer 107

Count layers in a document


'Counts the number of layers in the current document
'and stores in countOfLayers

Set appRef = CreateObject("Illustrator.Application")

'Get a reference to the layers, and obtain the total number


Set frontDocument = appRef.ActiveDocument
countOfLayers = frontDocument.Layers.Count
CHAPTER 1: VBScript Object Reference Layers 108

Layers
A collection of Layer objects.

Layers properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Object Read-only. The object that contains this Layer (can be another
Layer).

Layers methods

Method Returns What it does


Add Layer Creates a new object.
()

Index Long Returns the index position of the object within the collection.
(item as Layer)

RemoveAll Nothing Deletes all objects in this collection.


()

Deleting layers
'Deletes all layers containing a specified string in their name

Set appRef = CreateObject("Illustrator.Application")


searchString = "Temp"

'Loop through all open documents


layersDeleted = 0
For Each targetDocument In appRef.Documents
countOfLayers = targetDocument.Layers.Count
'Go through layers from the back to avoid changing the
'index of unvisited layers when we remove a layer
For layerIndex = countOfLayers To 1 Step -1
Set targetLayer = targetDocument.Layers(layerIndex)
layerName = targetLayer.Name
If (InStr(layerName, searchString) = 1) Then
targetDocument.Layers.Remove targetLayer
layersDeleted = layersDeleted + 1
End If
Next
Next
CHAPTER 1: VBScript Object Reference LegacyTextItem 109

LegacyTextItem
A text object created in Illustrator CS (version 10) or earlier, which is uneditable until converted. To convert
legacy text, see ConvertToNative.

You can view, move, and print legacy text, but you cannot edit it. Legacy text has an “x” through its
bounding box when selected.

LegacyTextItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so, what
kind.
BlendingMode AiBlendModes The mode used when compositing an object.
ControlBound Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Converted Boolean Read-only. If true, the legacy text has been updated to
a native text frame item.
Editable Boolean Read-only. If true, this item is editable.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding stroke
4 Doubles width.
Height Double The height of the LegacyTextItem excluding stroke
width, based on the GeometricBounds.
Hidden Boolean If true, this object is hidden.
IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer to which this LegacyTextItem
belongs.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this LegacyTextItem is locked.
Name String The name of this LegacyTextItem.
Note String The note assigned to this LegacyTextItem.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Parent Object Read-only. The object that contains this
LegacyTextItem.

Position Variant Array of The position (in points) of the top left corner of the item
2 Doubles in the format [x, y]. Does not include stroke weight.
CHAPTER 1: VBScript Object Reference LegacyTextItem 110

Property Value type What it is


Selected Boolean If true, this object is selected.
Sliced Boolean If true, this LegacyTextItem is sliced.
Tags Tags Read-only. The tags contained in this LegacyTextItem.
Top Double The top position of this LegacyTextItem.
URL String The value of the Adobe URL tag assigned to this
LegacyTextItem.

VisibilityVariable Variable The Variable bound to this LegacyTextItem.


VisibleBounds Variant Array of Read-only. The visible bounds of the LegacyTextItem
4 Doubles including stroke width.
Width Double The width of the LegacyTextItem excluding stroke
width, based on the GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object (text
frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

LegacyTextItem methods

Method Returns What it does


ConvertToNative GridRepea Converts the legacy text item to
() tConfig a text frame and deletes the
original legacy text.
Copy Nothing Copies the legacy text item to
() the clipboard; the associated
document must be the
frontmost document.
Cut Nothing Cuts the legacy text item to the
() clipboard; the associated
document must be the
frontmost document.
Duplicate Object Duplicates the art item,
([relativeObject as Object], optionally specifying the
[insertionLocation as AiElementPlacement]) location and position for the
copy.
CHAPTER 1: VBScript Object Reference LegacyTextItem 111

Method Returns What it does


Delete Nothing Deletes the object.
()

Move Nothing Moves the art item, specifying


(relativeObject as Object, the new location and position.
insertionLocation as AiElementPlacement)

Resize Nothing Scales the art item where


(scaleX as Double, scaleX is the horizontal scaling
scaleY as Double factor and scaleY is the vertical
[, changePositions as Boolean]
scaling factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to


(angle as Double, the current rotation. The object
[, changePositions as Boolean] is rotated counter-clockwise if
[, changeFillPatterns as Boolean]
the Angle value is positive,
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] clockwise if the value is
[, rotateAbout as AiTransformation]) negative.

Transform Nothing Transforms the art item by


(transformationMatrix as Matrix, applying a transformation
[, changePositions as Boolean] matrix.
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset
[, transformObjects as Boolean]
and deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position


(zOrderCmd as AiZOrderMethod) in the stacking order of the
group or layer (Parent) of this
object.
CHAPTER 1: VBScript Object Reference LegacyTextItems 112

LegacyTextItems
A collection of LegacyText items.

LegacyTextItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

LegacyTextItems methods

Method Returns What it does


ConvertToNative Boolean Creates text frames from all legacy text items;
() the original legacy text items are deleted.
Returns true if successful.
Index Long Returns the index position of the object
(itemPtr as LegacyTextItem) within the collection.
Item LegacyTextItem Returns an object reference to the object
(itemKey) identified by itemKey (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()
CHAPTER 1: VBScript Object Reference Lines 113

Lines
A collection of TextRange objects corresponding to a line of text.

Lines properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

Lines methods

Method Returns What it does


Index Long Returns the index position of the object within the
(itemPtr as TextRange) collection.
Item TextRange Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Counting lines
'Creates an area text item, adds some text, resizes
'the width of the path item containing the text item
'then counts the number of lines and stores in lineCount

'Create area text


textToPlace = "Scripting with Illustrator is fun and easy."
Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add()
Set itemRef = docRef.PathItems.Rectangle(500, 200, 50, 300)
Set textRef = docRef.TextFrames.AreaText(itemRef)
textRef.Contents = textToPlace
appRef.Redraw
'Change the path's width and display line count
itemRef.Width = 300
lineCount = textRef.Lines.Count
appRef.Redraw
CHAPTER 1: VBScript Object Reference Matrix 114

Matrix
A transformation matrix specification, used to transform the geometry of objects.

Matrices are used in conjunction with the Transform method and as a property of a number of objects.
You can generate an original matrix using the Application methods getIdentityMatrix,
getTranslationMatrix, getScaleMatrix, or getRotationMatrix. If you need to apply multiple
transformations to objects, it is more efficient to use the matrix suite than to apply the transformations
one at a time.

A Matrix is a record containing the matrix values, not a reference to a matrix object. The matrix
commands listed above operate on the values of a matrix record. If a command modifies a matrix, a
modified matrix record is returned as the result of the command. The original matrix record passed to the
command is not modified.

Matrix properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
MValueA Double Matrix property a.
MValueB Double Matrix property b.
MValueC Double Matrix property c.
MValueD Double Matrix property d.
MValueTX Double Matrix property tx.
MValueTY Double Matrix property ty.

Applying transformations with a matrix


'Creates a new translation and rotation matrix then
'applies it to all items in the current document

Set appRef = CreateObject("Illustrator.Application")

'Move art half an inch to the right and 1.5 inch up on the page
Set moveMatrix = appRef.GetTranslationMatrix(72 * 0.5, 72 * 1.5)
'Add a rotation to the translation -- 10 degrees counterclockwise
Set totalMatrix = appRef.ConcatenateRotationMatrix(moveMatrix, 10)

'Apply the transformation to all art in the document


For Each artItem In appRef.ActiveDocument.PageItems
artItem.Transform totalMatrix
Next
CHAPTER 1: VBScript Object Reference MeshItem 115

MeshItem
A gradient mesh art item. Mesh items cannot be created from a script, but can be copied and pasted.

MeshItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so, what
kind.
BlendingMode AiBlendModes The mode used when compositing an object.
ControlBounds Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, this MeshItem is editable.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding stroke
4 Doubles width.
Height Double The height of the MeshItem, based on the
GeometricBounds.

Hidden Boolean If true, this MeshItem is hidden.


IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The Layer to which this MeshItem belongs.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this MeshItem is locked.
Name String The name of this MeshItem.
Note String The note assigned to this MeshItem.
Opacity Double The opacity of the object. Range 0.0 to 100.0
Parent object Read-only. The object that contains this MeshItem.
Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item in the format [x, y]. Does not include stroke
weight.
Selected Boolean If true, this MeshItem is selected.
Sliced Boolean If true, this MeshItem is sliced.
Tags Tags Read-only. The tags contained in this MeshItem.
Top Double The position of the top of the item (in points,
measured from the bottom of the page).
CHAPTER 1: VBScript Object Reference MeshItem 116

Property Value type What it is


URL String The value of the Adobe URL tag assigned to this
MeshItem.

VisibilityVariable Variant The Variable bound to this MeshItem.


VisibleBounds Variant Array of Read-only. The visible bounds of the MeshItem
4 Doubles including stroke width.
Width Double The width of the MeshItem, based on the
GeometricBounds.

WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object
(text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

MeshItem methods

Method Returns What it does


Copy Nothing Copies the mesh item to the
() clipboard; the associated
document must be the frontmost
document.
Cut Nothing Cuts the mesh item to the
() clipboard; the associated
document must be the frontmost
document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object], specifying the location and
[insertionLocation as AiElementPlacement]) position for the copy.
Move Nothing Moves the art item, specifying the
(relativeObject as Object, new location and position.
insertionLocation as AiElementPlacement)
CHAPTER 1: VBScript Object Reference MeshItem 117

Method Returns What it does


Resize Nothing Scales the art item where scaleX
(scaleX as Double, is the horizontal scaling factor and
scaleY as Double, scaleY is the vertical scaling
[, changePositions as Boolean]
factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to the


(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the art item by


(transformationMatrix as Matrix, applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative to


([deltaX as Double] the current position, where
[, deltaY as Double] deltaX is the horizontal offset and
[, transformObjects as Boolean]
deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.

Locking mesh items


'Locks all mesh items in the current document

Set appRef = CreateObject("Illustrator.Application")

For Each meshItem In appRef.ActiveDocument.MeshItems


meshItem.Locked = True
Next
CHAPTER 1: VBScript Object Reference MeshItems 118

MeshItems
A collection of gradient mesh art items.

MeshItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

MeshItems methods

Method Returns What it does


Index Long Returns the index position of the object within the
(itemPtr as MeshItem) collection.
Item MeshItem Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Copying mesh items between documents

To run this script, have two open documents:

 One document should contain at least one MeshItem.

 The other document can be empty. Make the empty document the frontmost before running the
script.
'Copies all mesh items from one document
'to another, with an offset position

Set appRef = CreateObject("Illustrator.Application")

Set sourceDocument = appRef.Documents(1)


Set targetDocument = appRef.Documents.Add
locationOffset = 0
For Each meshItem In sourceDocument.MeshItems
sourceDocument.Activate
meshItem.Copy
targetDocument.Activate
targetDocument.Paste

'Get a reference to the item that was just copied into the document
targetSelection = appRef.selection
If (IsEmpty(targetSelection)) Then
CHAPTER 1: VBScript Object Reference MeshItems 119

Exit For
End If
Set newMeshItem = targetSelection(0)

newMeshItem.Position = Array(100, 400 + locationOffset)


locationOffset = locationOffset + 50
Next
CHAPTER 1: VBScript Object Reference NoColor 120

NoColor
Represents the “none” color. Assignment of a reference to a NoColor object to the document’s default fill
or stroke color, or those of an art item, is equivalent to setting their Filled or Stroked property to False.

NoColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.

Removing a fill color


'Creates 2 overlapping, filled path items, then
'sets the top item to "NoColor" to make the bottom item visible.

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()
Set itemRef1 = docRef.PathItems.Rectangle(500, 200, 200, 100)
Set itemRef2 = docRef.PathItems.Rectangle(550, 150, 200, 200)

Set colorRef = CreateObject("Illustrator.RGBColor")


colorRef.Blue = 255
itemRef1.FillColor = colorRef
colorRef.Red = 255
colorRef.Blue = 0
itemRef2.FillColor = colorRef
appRef.Redraw

'Create a nocolor object and assign it to the top object


Set noColorRef = CreateObject("Illustrator.NoColor")
itemRef2.FillColor = noColorRef
appRef.Redraw
CHAPTER 1: VBScript Object Reference NonNativeItem 121

NonNativeItem
A non-native artwork item.

NonNativeItem properties
This class inherits all properties of the page item class.

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Indicates whether this object is used to create a
knockout, and if so, what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
ControlBounds Variant Array of Read-only. The bounds of the object, including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, this object is editable.
GeometricBounds Variant Array of Read-only. The bounds of the object, excluding stroke
4 Doubles width.
Height Double The height of the object, based on GeometricBounds.
Hidden Boolean If true, this object is hidden.
IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer to which this object belongs.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this object is locked
Name String The name of this object.
Note String The note assigned to this object.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Parent object Read-only. The object that contains this object.
Position Variant Array of The position (in points) of the top left corner of the item
2 Doubles in the format [x, y]. Does not include stroke weight.
Selected Boolean If true, this object is selected.
Sliced Boolean If true, this object is sliced.
Tags Tags Read-only. The tags contained in this object.
Top Double The position of the top of the item (in points, measured
from the bottom of the page).
CHAPTER 1: VBScript Object Reference NonNativeItem 122

Property Value type What it is


URL String The value of the Adobe URL tag assigned to this object.
VisibilityVariable Variable The Variable bound to this object.
VisibleBounds Variant Array of Read-only. The visible bounds of the object including
4 Doubles stroke width.
Width Double The width of the object, based on GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, the text frame objects are wrapped around this
object (text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

NonNativeItem methods

Method Returns What it does


Copy Nothing Copies the item to the clipboard;
() the associated document must be
the frontmost document.
Cut Nothing Cuts the item to the clipboard; the
() associated document must be the
frontmost document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object], with the location and position for
[insertionLocation as AiElementPlacement]) the copy.
Move Nothing Moves the art item to a new
(relativeObject as Object, location and position.
insertionLocation as AiElementPlacement)

Resize Nothing Scales the art item where scaleX


(scaleX as Double, is the horizontal scaling factor
scaleY as Double, and scaleY is the vertical scaling
[, changePositions as Boolean]
factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])
CHAPTER 1: VBScript Object Reference NonNativeItem 123

Method Returns What it does


Rotate Nothing Rotates the art item relative to the
(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the art item by


(transformationMatrix as Matrix, applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset
[, transformObjects as Boolean]
and deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.
CHAPTER 1: VBScript Object Reference NonNativeItems 124

NonNativeItems
A collection of non-native items.

NonNativeItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

NonNativeItems methods

Method Returns What it does


Index Long Returns the index position of the object within the
(item as GraphicStyle) collection.
Item NonNativeItem Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference OpenOptions 125

OpenOptions
Options to use when opening files in Illustrator.

OpenOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ConvertCropAreaToArboard boolean Optional. Convert crop areas to artboards when
opening a legacy document in Illustrator CS4 or
later. When false, crop areas are discarded.
Default: true.
ConvertTilesToArboard boolean Optional. Convert print tiles to artboards when
opening a legacy document in Illustrator CS4 or
later. Default: false.
CreateArtboardWithArtworkBou boolean Optional. Create an artboard with the
ndingBox dimensions of the bounding box of the artwork
when opening a legacy document in Illustrator
CS4 or later. Default: false.
OpenAs AiLibraryType Opens the file as an Illustrator library.
Parent Document Read-only. The document that contains this
object.
PreserveLegacyArtboard boolean Optional. Preserve legacy artboards when
opening a legacy document in Illustrator CS4 or
later. Default: true.
UpdateLegacyGradientMesh Boolean If true, preserves the spot colors in the gradient
mesh objects for legacy documents
(pre-Illustrator CS4). Default: true
UpdateLegacyText Boolean If true, updates all text objects for documents
saved with legacy text by Illustrator versions
previous to CS. Default: false

Opening a file and updating legacy text

This script assumes the file C:\temp\LegacyText.ai exists.


'Opens a file containing legacy text and updates the text automatically
'filePath contains the full path and file name of the file

Sub openOptions(filePath)
Set appRef = CreateObject("Illustrator.Application")

'Open a file with legacy text


Set optionsRef = CreateObject("Illustrator.OpenOptions")
optionsRef.UpdateLegacyText = True
CHAPTER 1: VBScript Object Reference OpenOptions 126

Set docRef = appRef.Open(filePath, 1, optionsRef) ' 1 = aiDocumentRGBColor


End Sub
CHAPTER 1: VBScript Object Reference PageItem 127

PageItem
Any art item. Every art item and group in a document is a page item. You may refer to a page item as an
element of a document, layer, or group item.

The PageItem class gives you complete access to every art item contained in an Illustrator document. The
PageItem class is the superclass of all artwork objects in a document. The CompoundPathItem, GroupItem,
MeshItem, PathItem, PlacedItem, PluginItem, RasterItem, and TextFrame classes each inherit a set of
properties from the PageItem class.

You cannot create a PageItem directly, you must create one of the specific PageItem subclasses, such as
PathItem.

PageItem properties

Property Value type What it is


ArtworkKnockout AiKnockoutState Indicates whether the artwork is used to create a
knockout.
BlendingMode AiBlendModes The mode to use when compositing this object. An
object is considered composited when its opacity is set
to less than 100.0 (100%).
ControlBounds Rect Read-only. The bounds of the object including stroke
width and controls.
Editable Boolean Read-only. If true, this page item is editable.
GeometricBounds Rect Read-only. The object’s bounds excluding the stroke
width.
Height Real The height of the page item, calculated from the
geometric bounds. Range: 0.0 to 16348.0
Hidden Boolean If true, this page item is hidden.
IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer to which this page item belongs.
Left Double The left position of the art item.
Locked Boolean If true, this page item is locked.
Name String The name of this page item.
Note String The note assigned to this item.
Opacity Real The opacity of this object, where 100.0 is completely
opaque and 0.0 is completely transparent.
Position Point The position (in points) of the top left corner of the item
in the format {x, y}. Does not include stroke weight.
PixelAligned Boolean True if this item is aligned to the pixel grid.
CHAPTER 1: VBScript Object Reference PageItem 128

Property Value type What it is


Selected Boolean If true, this object is selected.
Sliced Boolean If true, preserve slices.
Tags Tags The collection of tags associated with this page item.
Top Double The top position of the art item.
URL String The value of the Adobe URL tag assigned to this page
item.
VisibilityVariable Anything The visibility variable to which this page item path is
bound.
VisibleBounds Rect Read-only. The object’s visible bounds, including stroke
width of any objects in the illustration.
Width Real The width of the page item, calculated from the
geometric bounds. Range: 0.0 to 16348.0
WrapInside Boolean If true, the text frame object should be wrapped inside
this object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object (text
frame must be above the object).
ZOrderPosition Long Read-only. The drawing order of the art within its group
or layer.

PageItem methods

Method Returns What it does


BringInPerspective Nothing Places art object(s) in a perspective
(PositionX as Double, grid at a specified position and grid
PositionY as Double, plane.
gridPlane as AiPerspectiveGridPlaneType)

Copy Nothing Copies the selection to the


() clipboard.
Cut Nothing Cuts the selection to the clipboard.
()

Resize Nothing Scales art object(s).


(scaleX as Double,
scaleY as Double
[,changePositions as Boolean]
[,changeFillPatterns as Boolean]
[,changeFillGradients as Boolean]
[,changeStrokePattern as Boolean]
[,changeLineWidths as Double]
[,scaleAbout as AiTransformation])
CHAPTER 1: VBScript Object Reference PageItem 129

Method Returns What it does


Rotate Nothing Rotates art object(s).
(angle as Double
[,changePositions as Boolean]
[,changeFillPatterns as Boolean]
[,changeFillGradients as Boolean]
[,changeStrokePattern as Boolean]
[,rotateAbout as AiTransformation])

Transform Nothing Transforms art object(s) using a


(transformationMatrix as Matrix transformation matrix.
[,changePositions as Boolean]
[,changeFillPatterns as Boolean]
[,changeFillGradients as Boolean]
[,changeStrokePattern as Boolean]
[,changeLineWidth as Double]
[,transformAbout as AiTransformation])

Translate Nothing Repositions art object(s).


([deltaX as Double]
[,deltaY as Double]
[,transformObjects as Boolean]
[,transformFillPatterns as Boolean]
[,transformFillGradents as Boolean]
[,transformStrokePattern as Boolean])

ZOrder Nothing Arranges the art relative to other art


(zOrderCmd as AiZOrderMethod) in the group or layer.
CHAPTER 1: VBScript Object Reference PageItems 130

PageItems
A collection of PageItem objects. Provides complete access to all the art items in an Illustrator document
in the following classes:
CompoundPathItem
GraphItem
GroupItem
MeshItem
NonNativeItem
PathItem
PlacedItem
RasterItem
SymbolItem
TextFrame

You can reference page items through the PageItems property in a Document, Layer, or Group. When you
access an individual item in one of these collections, the reference a page item of one of a particular type.
For example, if you use PageItems to reference a graph item, the typename value of that object is
GraphItem.

PageItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.

Count Long Read-only. Number of elements in the collection.


Parent Object Read-only. The object’s container.

PageItems methods

Method Returns What it does


Index Long Returns the index position of the
(itemPtr as PageItem) object within the collection.
Item Object Returns an object reference to the
(itemKey) object identified by itemKey
(name or index).
RemoveAll Nothing Deletes all objects in this
() collection.
CHAPTER 1: VBScript Object Reference PageItems 131

Getting references to external files

Before running this script, open a document that contains one or more linked images.
'Gets the file references of all placed and raster items,
'then displays them in a new document

Set appRef = CreateObject("Illustrator.Application")


Dim fileReferences(9)
Set sourceDocument = appRef.ActiveDocument
index = 0
For Each artItem In sourceDocument.PageItems
Select Case TypeName(artItem)
Case "PlacedItem"
fileReferences(index) = artItem.File
index = index + 1
Case "RasterItem"
If (Not artItem.Embedded) Then
fileReferences(index) = artItem.File
index = index + 1
End If
End Select
If index = 10 Then
Exit For
End If
Next

'Write the file references to a new document


Set reportDocument = appRef.Documents.Add

Set fileNameText = reportDocument.TextFrames.Add


fileNameText.Position = Array(50, 520)
fileNameText.Contents = "File references in " &_
sourceDocument.Name & ":"
For counter = 0 To (index - 1)
Set fileNameText = reportDocument.TextFrames.Add
fileNameText.Position = Array(65, 500 - 20 * counter)
fileNameText.Contents = fileReferences(counter)
Next

Getting page items of particular types


'Sets all placed or raster page items to hidden

Set appRef = CreateObject("Illustrator.Application")

For Each artItem In appRef.ActiveDocument.PageItems


If (TypeName(artItem) = "PlacedItem" Or _
TypeName(artItem) = "RasterItem") Then
artItem.Hidden = True
End If
Next
CHAPTER 1: VBScript Object Reference Paper 132

Paper
A container for information objects about the paper to be used for printing.

Paper properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The paper name.
PaperInfo PaperInfo The paper information.
CHAPTER 1: VBScript Object Reference PaperInfo 133

PaperInfo
Contains information about the dimensions and imageable area of the paper to be used for printing.

PaperInfo properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
CustomPaper Boolean If true, a custom paper is being used.
Height Double The paper’s height in points.
ImageableArea Array of 4 Doubles The imageable area.
Width Double The paper’s width in points.

Using Paper and PaperInfo objects


'Creates a new document then displays the paper list of the first printer in a text
frame

Set appRef = CreateObject("Illustrator.Application")

'Add a new document with some simple artwork


'(Must be a printable artwork for use with Printer object.)
Set docRef = appRef.Documents.Add()
Set textRef = docRef.TextFrames.Add()
textRef.Top = 750
textRef.Left = 50

curPrinterList = appRef.PrinterList

If UBound(curPrinterList) < 1 Then


'exit
sText = "Empty PrinterList"
paragraphCount = 1
Else
'Get paper objects for first printer
Set printerRef = curPrinterList(1)
sText = printerRef.Name
sText = sText & " paper list:" & vbCrLf

'Display data about available paper types


paragraphCount = 2
paperSizeArray = printerRef.PrinterInfo.PaperSizes
If IsEmpty (paperSizeArray) Then
sText = sText & vbCrLf
paragraphCount = paragraphCount + 1
Else
For i = 0 To UBound(paperSizeArray) - 1
Set paperRef = paperSizeArray(i)
sText = sText & paperRef.Name & vbCrLf
sText = sText & vbTab & paperRef.PaperInfo.Width
sText = sText & " x " & paperRef.PaperInfo.Height & vbCrLf
CHAPTER 1: VBScript Object Reference PaperInfo 134

paragraphCount = paragraphCount + 2
Next
End If
End If
textRef.Contents = sText
appRef.Redraw
}
CHAPTER 1: VBScript Object Reference ParagraphAttributes 135

ParagraphAttributes
Specifies the properties and attributes of a paragraph contained in a text frame.

NOTE: Paragraph attributes do not have default values, and are undefined until explicitly set.

ParagraphAttributes properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
AutoLeadingAmount Double Auto leading amount (as a percentage).
BunriKinshi Boolean If true, BunriKinshi is enabled.
BurasagariType AiBurasagariTypeEnum The Burasagari type, which specifies
whether punctuation is allowed to fall
outside of the paragraph bounding
box (not available when Kinsoku Shori
is set to None).
DesiredGlyphScaling Double The desired glyph scaling, expressed as
a percentage of the default character
width. Range: 50.0 to 200.0; at 100.0,
the width of characters is not changed.
DesiredLetterSpacing Double Desired letter, spacing expressed as a
percentage of the default kerning or
tracking Range: -100.0 to 500.0; at 0, no
space is added between letters; at
100.0, an entire space width is added
between letters.
DesiredWordSpacing Double Desired word spacing, expressed as a
percentage of the default space for the
font. Range: 0.0 to 1000.0; at 100.00, no
space is added between words.
EveryLineComposer Boolean If true, the Every-line Composer is
enabled. If false, the Single-line
Composer is enabled.
FirstLineIndent Double First line left indent (in points).
HyphenateCapitalizedWords Boolean If true, hyphenation is enabled for
capitalized words.
Hyphenation Boolean If true, hyphenation is enabled for the
paragraph.
CHAPTER 1: VBScript Object Reference ParagraphAttributes 136

Property Value type What it is


HyphenationPreference Double Hyphenation preference scale for
better spacing (0) or fewer hyphens (1).

Range: 0.0 to 1.0


HyphenationZone Double The distance (in points) from the right
edge of the paragraph that marks the
part of the line where hyphenation is
not allowed. Note: 0 allows all
hyphenation. Valid only when
EveryLineComposer is false.
Justification AiJustification Paragraph justification.
Kinsoku String The name of a Kinsoku Shori set (a set
of characters which cannot be used to
begin or end a line of Japanese text).
KinsokuOrder AiKinsokuOrderEnum The preferred Kinsoku order.
KurikaeshiMojiShori Boolean If true, Kurikaeshi Moji Shori is enabled
(controls how repeated characters are
handled in Japanese text).
LeadingType AiAutoLeadingType The type of auto leading.
LeftIndent Double The left indent (in points).
MaximumConsecutiveHyphens Long Maximum number of consecutive
hyphenated lines.
MaximumGlyphScaling Double Maximum glyph scaling, expressed as a
percentage of the default character
width. Range: 50.0 to 200.0; at 100.0,
the width of characters is not changed.
Note: Valid only for justified
paragraphs.
MaximumLetterSpacing Double Maximum letter spacing, expressed as
a percentage of the default kerning or
tracking Range: -100.0 to 500.0; at 0, no
space is added between letters; at
100.0, an entire space width is added
between letters. Note: Valid only for
justified paragraphs.
MaximumWordSpacing Double Maximum word spacing, expressed as a
percentage of the default space for the
font. Range: 0.0 to 1000.0; at 100.00, no
space is added between words.Note:
Valid only for justified paragraphs.
MinimumAfterHyphen Long Minimum number of characters after a
hyphen.
CHAPTER 1: VBScript Object Reference ParagraphAttributes 137

Property Value type What it is


MinimumBeforeHyphen Long Minimum number of characters before
a hyphen.
MinimumGlyphScaling Double Minimum glyph scaling, expressed as a
percentage of the default character
width. Range: 50.0 to 200.0; at 100.0,
the width of characters is not changed.
Note: Valid only for justified
paragraphs.
MinimumHyphenatedWordSize Long Minimum number of characters for a
word to be hyphenated.
MinimumLetterSpacing Double Minimum letter spacing, expressed as a
percentage of the default kerning or
tracking Range: -100.0 to 500.0; at 0, no
space is added between letters; at
100.0, an entire space width is added
between letters. Note: Valid only for
justified paragraphs.
MinimumWordSpacing Double Minimum word spacing, expressed as a
percentage of the default space for the
font. Range: 0.0 to 1000.0; at 100.00, no
space is added between words.Note:
Valid only for justified paragraphs.
Mojikumi String The name of a predefined Mojikumi set
for Japanese text composition.
Parent Object Read-only. The object’s container.
RightIndent Double Right indent of margin expressed in
points.
RomanHanging Boolean If true, Roman hanging punctuation is
enabled.
SingleWordJustification AiJustification Single word justification.
SpaceAfter Double Spacing after paragraph (in points).
SpaceBefore Double Spacing before paragraph (in points).
TabStops Array of Tab stop settings, as TabStopInfo
SymmetryRepeatConfig objects.
CHAPTER 1: VBScript Object Reference ParagraphAttributes 138

Modifying paragraph attributes


'Creates a new document with an area text item
'containing 3 paragraphs then uses paragraph attributes
'to apply a different justification to each paragraph

Set appRef = CreateObject("Illustrator.Application")

'Create 3 new pararagraphs


Set docRef = appRef.Documents.Add()
Set pathRef = docRef.PathItems.Rectangle(600, 200, 200, 400)
Set textRef = docRef.TextFrames.AreaText(pathRef)
textRef.Paragraphs.Add ("Left justified paragraph.")
textRef.Paragraphs.Add ("Center justified paragraph.")
textRef.Paragraphs.Add ("Right justified paragraph.")
textRef.TextRange.CharacterAttributes.Size = 28

'Change the justification of each paragraph


'using the paragraph attributes object
textRef.Paragraphs(1).ParagraphAttributes.Justification = 1 'aiRight
textRef.Paragraphs(2).ParagraphAttributes.Justification = 2 'aiCenter
textRef.Paragraphs(3).ParagraphAttributes.Justification = 0 'aiLeft
CHAPTER 1: VBScript Object Reference Paragraphs 139

Paragraphs
A collection of Paragraph objects.

Paragraphs properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

Paragraphs methods

Method Returns What it does


Add TextRange Adds a new paragraph with
(contents as String specified contents at the
[, relativeObject as TextFrame] specified location in the
[, insertionLocation as AiElementPlacement])
document. If location is not
specified, adds the
paragraph to the containing
text frame after the current
text selection or insertion
point.
AddBefore TextRange Adds a new paragraph with
(contents as String) specified contents before the
current selection or insertion
point.
Index Long Returns the index position of
(itemPtr as PageItem) the object within the
collection.
Item Object Returns a reference to the
(itemKey) object identified by itemKey
(name or index).
RemoveAll Nothing Deletes all objects in this
() collection.
CHAPTER 1: VBScript Object Reference Paragraphs 140

Counting paragraphs in a document


'Counts the number of paragraphs in the document and
'stores in numParagraphs

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


numParagraphs = 0
For Each curTextArt In appRef.ActiveDocument.TextFrames
Set curTextRange = curTextArt.TextRange
numParagraphs = numParagraphs + curTextRange.Paragraphs.Count
Next
End If
CHAPTER 1: VBScript Object Reference ParagraphStyle 141

ParagraphStyle
Associates character and paragraph attributes with a style. The style object can be used to apply those
attributes to the text in a TextFrame object.

ParagraphStyle properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
CharacterAttributes CharacterAttributes Read-only. The character properties for the text
range.
Name String The ParagraphStyle’s name.
ParagraphAttributes ParagraphAttributes Read-only. The paragraph properties for the text
range.
Parent Object Read-only. The object’s container.

ParagraphStyle methods

Method Returns What it does


ApplyTo Nothing Applies the paragraph style to the text object.
(textFrame as TextFrame
[, clearingOverrides as Boolean])

Delete Nothing Deletes the object.


()
CHAPTER 1: VBScript Object Reference ParagraphStyle 142

Creating and applying a paragraph style


'Creates 3 paragraphs with different attributes, creates
'a paragraph style and applies it to each paragraph

Set appRef = CreateObject("Illustrator.Application")

'Create 3 new pararagraphs


Set docRef = appRef.Documents.Add()
Set pathRef = docRef.PathItems.Rectangle(600, 200, 200, 400)
Set textRef = docRef.TextFrames.AreaText(pathRef)
textRef.Paragraphs.Add ("Left justified paragraph.")
textRef.Paragraphs.Add ("Center justified paragraph.")
textRef.Paragraphs.Add ("Right justified paragraph.")
textRef.TextRange.CharacterAttributes.Size = 28

'Change the justification of each paragraph


'using the paragraph attributes object
textRef.Paragraphs(1).ParagraphAttributes.Justification = 1 'aiRight
textRef.Paragraphs(2).ParagraphAttributes.Justification = 2 'aiCenter
textRef.Paragraphs(3).ParagraphAttributes.Justification = 0 'aiLeft

'Create a new paragraph style


Set paraStyle = docRef.ParagraphStyles.Add("LeftIndent")

'Add some paragraph attributes


paraStyle.ParagraphAttributes.Justification = 0 'aiLeft
paraStyle.ParagraphAttributes.FirstLineIndent = 10

For Each pg In textRef.Paragraphs


paraStyle.ApplyTo pg, True
Next
appRef.Redraw
CHAPTER 1: VBScript Object Reference ParagraphStyles 143

ParagraphStyles
A collection of ParagraphStyle objects. See ParagraphStyle for an example.

ParagraphStyles properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

ParagraphStyles methods

Method Returns What it does


Add ParagraphStyle Creates a new ParagraphStyle object.
(name as String)

Index Long Returns the index position of the object


(itemPtr as ParagraphStyle) within the collection.
Item ParagraphStyle Returns an object reference to the object
(itemKey) identified by itemKey (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()
CHAPTER 1: VBScript Object Reference PathItem 144

PathItem
Art items such as those created using the Line, Rectangle, or Pen Tools. A path consists of path points that
define its geometry. Path points are defined either as a PathPoint object or as an x-y page coordinate pair.
The PathItem class gives you complete access to paths in Illustrator.

PathItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Area Double Read-only. The area of this path in square points. If
the area is negative, the path is wound
counterclockwise. Self-intersecting paths can
contain sub-areas that cancel each other out, which
makes this value zero even though the path has
apparent area.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so,
what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
Clipping Boolean If true, this path is to be used as a clipping path
Closed Boolean If true, this path is closed
ControlBounds Variant Array of Read-only. The bounds of the object including
4 Doubles stroke width and controls.
Editable Boolean Read-only. If true, this path item is editable.
Evenodd Boolean If true, the even-odd rule is used to determine
insideness.
FillColor Color info The fill color of the path.
Filled Boolean If true, the path is filled.
FillOverprint Boolean If true, the art beneath a filled object are
overprinted.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding
4 Doubles stroke width.
Guides Boolean If true, this path is a guide object.
Height Double The height of the path item, based on the
GeometricBounds.

Hidden Boolean If true, this path item is hidden.


IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The Layer to which this path item
belongs.
CHAPTER 1: VBScript Object Reference PathItem 145

Property Value type What it is


Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Length Double Read-only. The length of this path (in points).
Locked Boolean If true, this path item is locked.
Name String The name of this path item.
Note String The note text assigned to the path
Opacity Double The opacity of the object. Range 0.0 to 100.0
Parent object Read-only. The object that contains this path item.
PathPoints PathPoints Read-only. The path points contained in this path
item.
Polarity AiPolarityValues The polarity of the path.
Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item in the format [x, y]. Does not include stroke
weight.
Resolution Double The resolution of the path in dots per inch.
Selected Boolean If true, this path item is selected.
SelectedPathPoints PathPoints Read-only. All of the selected path points in the path.
Sliced Boolean If true, this path item is sliced.
StrokeCap AiStrokeCap The type of line capping.
StrokeColor Color info The stroke color for the path.
Stroked Boolean If true, the path is stroked.
StrokeDashes Variant Array of The lengths for dashes and gaps in dashed lines,
Doubles starting with the first dash length, followed by the
first gap length, and so on. Set to an empty list, [],
for a solid line.
StrokeDashOffset Double The default distance into the dash pattern at which
the pattern is started.
StrokeJoin AiStrokeJoin Type of joints for the path.
StrokeMiterLimit Double When a default stroke join is set to mitered, this
property specifies when the join will be converted to
beveled (squared-off ) by default. The default miter
limit of 4 means that when the length ofþthe point
reaches four times the stroke weight, the join
switches from a miter join to a bevel join. A value of
1 specifies a bevel join. Range: 1 to 500 Default: 4
StrokeOverprint Boolean If true, the art beneath a stroked object is
overprinted.
CHAPTER 1: VBScript Object Reference PathItem 146

Property Value type What it is


StrokeWidth Double The width of the stroke (in points).
Tags Tags Read-only. The tags contained in this path item.
Top Double The position of the top of the item (in points,
measured from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this path
item.
VisibilityVariable Variant The Variable bound to this path item.
VisibleBounds Variant Array of Read-only. The visible bounds of the path item
4 Doubles including stroke width.
Width Double The width of the path item, based on the
GeometricBounds.

WrapInside Boolean If true, the text frame object is wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, wrap text frame objects around this object
(text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

PathItem methods

Method Returns What it does


Copy Nothing Copies the path item to the
() clipboard; the associated
document must be the frontmost
document.
Cut Nothing Cuts the path item to the
() clipboard; the associated
document must be the frontmost
document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object], with the location and position for
[insertionLocation as AiElementPlacement]) the copy.
CHAPTER 1: VBScript Object Reference PathItem 147

Method Returns What it does


Move Nothing Moves the art item to a new
(relativeObject as Object, location and position.
insertionLocation as AiElementPlacement)

Resize Nothing Scales the art item where scaleX


(scaleX as Double, is the horizontal scaling factor
scaleY as Double, and scaleY is the vertical scaling
[, changePositions as Boolean]
factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to the


(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

SetEntirePath Nothing Sets the path using the specified


(pathSpecification as Array of [x, y] array of (x,y) coordinate pairs for
coordinate pairs) path points.
Transform Nothing Transforms the art item by
(transformationMatrix as Matrix, applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset
[, transformObjects as Boolean]
and deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.
CHAPTER 1: VBScript Object Reference PathItem 148

Setting attributes of a path


'Sets the fill color and stroke width of the first path item

Set appRef = CreateObject("Illustrator.Application")

Set frontDocument = appRef.ActiveDocument


Set firstPath = frontDocument.PathItems(1)
firstPath.Filled = True
firstPath.fillColor = frontDocument.Swatches(10).Color
firstPath.Stroked = True
firstPath.StrokeWidth = 5

Setting a path consisting of straight lines

The SetEntirePath method provides an extremely efficient way to create paths that consist of straight
lines. This script illustrates the use of the method.
'Creates 10 lines in the document then adds them as a single path item.

Set appRef = CreateObject("Illustrator.Application")


Dim lineList(10)

For index = 0 To 10
lineList(index) = Array(index * 10 + 50, (index - 5) ^ 2 * 5 + 50)
Next

Set frontDocument = appRef.ActiveDocument


Set newPath = frontDocument.PathItems.Add
newPath.SetEntirePath(lineList)
CHAPTER 1: VBScript Object Reference PathItems 149

PathItems
A collection of PathItem objects. The methods Ellipse, Polygon, Rectangle, RoundedRectangle, and
Star allow you to create complex PathItems using straightforward parameters. Note that Rectangle,
RoundedRectangle, and Ellipse take the Y axis first (Top), then the X axis (Left). If you do not provide any
parameters when calling these methods, default values are used.

PathItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

PathItems methods

Method Returns What it does


Add PathItem Creates a new PathItem object.
()

Ellipse PathItem Creates a new PathItem in the shape of an


([top as Double] ellipse using the supplied parameters. Defaults:
[, left as Double] Top: 100 pt.; Left: 100 pt.; Width: 50 pt.;
[, width as Double]
Height: 100 pt.; Reversed: False
[, height as Double]
[, reversed as Boolean]
[, inscribed as Boolean])

Index Long Returns the index position of the object within


(item as PathItem) the collection.
Item PathItem Returns an object reference to the object
(itemKey) identified by itemKey (name or index).
Polygon PathItem Creates a new PathItem in the shape of a
([centerX as Double] polygon using the supplied parameters.
[, centerY as Double] Defaults: CenterX: 200 pt.; CenterY: 300 pt.;
[, radius as Double]
Radius: 50 pt.; Sides: 8; Reversed: false
[, sides as Long]
[, reversed as Boolean])

Rectangle PathItem Creates a new PathItem in the shape of a


([top as Double] rectangle using the supplied parameters.
[, left as Double]
[, width as Double]
[, height as Double]
[, reversed as Boolean])

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference PathItems 150

Method Returns What it does


RoundedRectangle PathItem Creates a new PathItem in the shape of a
([top as Double] rectangle with rounded corners using the
[, left as Double] supplied parameters. Defaults:
[, width as Double]
HorizontalRadius: 15 pt.; VerticalRadius:
[, height as Double]
[, horizontalRadius as Double] 20 pt.; Reversed: False
[, verticalRadius as Double]
[, reversed as Boolean])

Star PathItem Creates a new PathItem in the shape of a star


([centerX as Double] using the supplied parameters. Defaults:
[, centerY as Double] CenterX: 200 pt.; CenterY: 300 pt.; Radius: 50
[, radius as Double]
pt.; InnerRadius: 20 pt.; Points: 5; Reversed:
[, innerRadius as Double]
[, points as Long] False
[, reversed as Boolean] )

Creating shapes
'Creates 5 new path items in the current document and
'applies a random graphic style to each item

Set appRef = CreateObject("Illustrator.Application")

Set frontDocument = appRef.Documents.Add()

'Create a new rectangle with


'top = 762.5, left side = 87.5, witdth = 425 and height = 75
Set newRectangle = frontDocument.PathItems.Rectangle(762.5,87.5,425.0,75.0)
'create new rounded rectangle
Set newRndRectangle =
frontDocument.PathItems.RoundedRectangle(637.5,87.5,425.0,75.0,20.0,10.0)
'create ellipse, 'reversed' is false, 'inscribed' is true
Set newEllipse = frontDocument.PathItems.Ellipse(512.5,87.5,425.0,75.0,false,true)
'create an 8 sided polygon
Set newOctagon = frontDocument.PathItems.Polygon(300.0,325.0,75.0,8)
'create a 4 pointed star
Set newStar = frontDocument.PathItems.Star(300.0,125.0,100.0,20.0,4)

For Each newItem in frontDocument.PathItems


Randomize
styleIndex = Int((frontDocument.GraphicStyles.Count) * Rnd + 1)
frontDocument.GraphicStyles(styleIndex).ApplyTo(newItem)
Next
CHAPTER 1: VBScript Object Reference PathPoint 151

PathPoint
A point on a specific path. Each path point is made up of an anchor point and a pair of handles, or control
points.

PathPoint properties

Property Value type What it is


Anchor Variant Array of The position of the anchor point.
2 Doubles
Application Application Read-only. The Illustrator Application object.
LeftDirection Variant Array of The position of this path point’s inward control point.
2 Doubles
Parent Object Read-only. The object that contains this PathPoint
object.
PointType AiPointType The type of path point, either a curve or a corner. Any
point can considered a corner point. Setting the type
to a corner forces the left and right direction points to
be on a straight line when the user attempts to modify
them in the user interface.
RightDirection Variant Array of The position of this path point’s outward control
2 Doubles point.
Selected AiPathPointSelection Are points of this path point selected, and if so, which
ones.

PathPoint methods

Method Returns What it does


Delete Nothing Deletes the object.
()
CHAPTER 1: VBScript Object Reference PathPoint 152

Shaping a path item by modifying a path point


'Changes the left and right path point directions of
'all but the last path point of frontmost path item

Set appRef = CreateObject("Illustrator.Application")


Set firstPath = appRef.ActiveDocument.PathItems(1)
countOfPoints = firstPath.PathPoints.Count

'Go through all PathPoints except the last one and set the
'left/right direction according to where the next point is
For index = 1 To (countOfPoints - 1)
Set currentPoint = firstPath.PathPoints(index)
Set nextPoint = firstPath.PathPoints(index + 1)
currentAnchorList = currentPoint.Anchor
nextAnchorList = nextPoint.Anchor
deltax = nextAnchorList(0) - currentAnchorList(0)
deltay = currentAnchorList(1) - nextAnchorList(1)
length = Sqr(deltax ^ 2 + deltay ^ 2)

currentPoint.LeftDirection = Array(currentAnchorList(0) - (50 * deltax / length),


currentAnchorList(1) - (50 * deltay / length))
currentPoint.RightDirection = Array(currentAnchorList(0) + (50 * deltax / length),
currentAnchorList(1) + (50 * deltay / length))
Next
CHAPTER 1: VBScript Object Reference PathPoints 153

PathPoints
A collection of PathPoint objects in a path.

PathPoints properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

PathPoints methods

Method Returns What it does


Add PathPoint Creates a new PathPoint object.
()

Index Long Returns the index position of the object within the collection.
(item as PathPoint)

Item PathPoint Returns an object reference to the object identified by


(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Adding a new path point


'Creates a new path point in the first path item

Set appRef = CreateObject("Illustrator.Application")


Set firstPath = appRef.ActiveDocument.PathItems(1)
Set newPoint = firstPath.PathPoints.Add

newPoint.Anchor = Array(75, 300)


newPoint.LeftDirection = Array(10, 280)
newPoint.RightDirection = Array(165, 330)
newPoint.PointType = 2
CHAPTER 1: VBScript Object Reference Pattern 154

Pattern
An Illustrator pattern definition contained in a document. Patterns are shown in the Swatches palette.
Each pattern is referenced by a PatternColor object, which defines the pattern’s appearance.

Pattern properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The pattern name.
Parent Document Read-only. The document that contains this pattern.

Pattern methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Setting a fill color to a pattern


'Sets the default fill to pattern 1

Set appRef = CreateObject("Illustrator.Application")


Set frontDocument = appRef.Documents(1)
Set patternColor = CreateObject("Illustrator.PatternColor")

For Each swatchRef In appRef.ActiveDocument.Swatches


' Get the color object of the swatch
Set swatchColor = swatchRef.Color
' Only operate on patterns
If (swatchColor.TypeName = "PatternColor") Then
frontDocument.DefaultFilled = true
frontDocument.DefaultFillColor = swatchColor
End If
Next
CHAPTER 1: VBScript Object Reference PatternColor 155

PatternColor
A pattern color specification, used in conjunction with the Pattern property of the Color specification.
Pattern colors are created using a reference to an existing pattern in the document. A matrix may be
specified to further transform the pattern color.

PatternColor objects can be used in any property that takes a color info object, such as fillColor or
strokeColor.

PatternColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Matrix Matrix An additional transformation matrix to manipulate the
prototype pattern.
Pattern Pattern A reference to the pattern object to use in this color definition.
Reflect Boolean If true, the prototype is reflected before filling.
ReflectAngle Double The axis in degrees around which to reflect.
Rotation Double The angle in degrees to rotate the prototype pattern before
filling.
ScaleFactor Variant Array of The fraction to which to scale the prototype pattern before
2 Doubles filling, represented as a point containing horizontal and vertical
scaling percentages
ShearAngle Double The angle in degrees by which to slant the shear.
ShearAxis Double The axis in degrees to shear relative to.
ShiftAngle Double The angle in degrees to translate the unscaled prototype
pattern before filling.
ShiftDistance Double The distance in points to which to translate the unscaled
prototype pattern before filling.
CHAPTER 1: VBScript Object Reference PatternColor 156

Modifying a pattern
'Rotates each pattern in the swatch list 10 degrees
'then applies it to the first path item.

Set appRef = CreateObject("Illustrator.Application")


Set colorOfPattern = CreateObject("Illustrator.PatternColor")
Set frontPath = appRef.ActiveDocument.PathItems(1)

For Each swatchRef In appRef.ActiveDocument.Swatches


'Get the color object of the swatch
Set swatchColor = swatchRef.Color
'Only operate on patterns
If (swatchColor.TypeName = "PatternColor") Then
swatchColor.Rotation = 10
frontPath.filled = true
frontPath.fillColor = swatchColor
End If
Next
CHAPTER 1: VBScript Object Reference Patterns 157

Patterns
A collection of Pattern objects in a document.

Patterns properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

Patterns methods

Method Returns What it does


Add Pattern Creates a new Pattern object.
()

Index Long Returns the index position of the object within the collection.
(item as Pattern)

Item Pattern Returns an object reference to the object identified by itemKey


(itemKey) (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()

Removing a pattern
'Deletes a pattern from the document

Set appRef = CreateObject("Illustrator.Application")

'Delete the pattern, then set the patternToRemove reference to


'nothing because it no longer references an existing Illustrator pattern
Set frontDocument = appRef.Documents(1)
Set patternToRemove = frontDocument.Patterns(1)
frontDocument.Patterns.Remove patternToRemove
CHAPTER 1: VBScript Object Reference PDFFileOptions 158

PDFFileOptions
Options for opening Adobe PDF documents. This object is found in the PDFFileOptions property of the
Preferences class.

PDFFileOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
PageToOpen Long Specifies which page are used when opening a multipage
document. Default: 1
Parent Object Read-only. The object’s container.
PDFCropToBox AiPDFBoxType Specifies which box are used when placing a multipage document.
Default: 4 AiPDFMediaBox

Opening a PDF file


'Opens a multi-page PDF file to a specific
'page using the PDFFileOptions object
'filePath contains the full name and file path of the file to open

Sub pdfFileOptions(filePath)
Set appRef = CreateObject("Illustrator.Application")

With appRef.Preferences.PDFFileOptions
.PageToOpen = 2
.PDFCropToBox = 5 'aiPDFBoundingBox
End With

Set docRef = appRef.Open(filePath, 1)


End Sub
CHAPTER 1: VBScript Object Reference PDFSaveOptions 159

PDFSaveOptions
Options that can be supplied when saving a document as an Adobe PDF file with the document SaveAs
method.

PDFSaveOptions properties

Property Value type What it is


AcrobatLayers Boolean Optional. If true, create PDF layers
from top-level layers (Acrobat 6 only
option). Default: false
Application Application Optional. Read-only. The Illustrator
Application object.

ArtboardRange string Optional. This is considered for


multi-asset extraction, which
specifies the artboard range. An
empty string extracts all the
artboards. Default: empty string
BleedLink Boolean Optional. Link 4 bleed values.
Default: true
BleedOffsetRect Variant Array of 4 Doubles The bleed offset rectangle.
ColorBars Boolean Optional. Draw color bars.
Default: false
ColorCompression AiCompressionQuality Optional. Compression method for
color bitmap images.
Default: 1 aiNoCompression
ColorConversionID AiColorConversion Optional. The PDF color conversion
policy. Default:
0 aiColorConversionNone

ColorDestinationID AiColorDestination Optional. The conversion target for


color conversion. Default:
0 aiColorDestinationNone

ColorDownsampling Double Optional. if zero, no downsampling,


otherwise, the resolution to
downsample color bitmap images
to. Default: 150.0
ColorDownsamplingImage- Double Optional. Downsample if the
Threshold image’s resolution is above this
value. Default: 225.0
ColorDownsamplingMethod AiDownsampleMethod Optional. Specifies how color
bitmap images are resampled.
Default: 0 aiNoDownsample
CHAPTER 1: VBScript Object Reference PDFSaveOptions 160

Property Value type What it is


ColorProfileID AiColorProfile Optional. The color profile to
include.
Default: 0 aiColorProfileNone
ColorTileSize Long Optional. Tile size when
compressing with JPEG2000.
Default: 256
Compatibility AiPDFCompatibility Optional. The version of the
Acrobat® file format to create.
Default: 5 Acrobat5
CompressArt Boolean Optional. If true, line art and text
are compressed. Default: true
DocumentPassword String Optional. A password string to open
the document. Default: no string
EnableAccess Boolean Optional. If true, enable accessing
128-bit. Default: true
EnableCopy Boolean Optional. If true, enable copying of
text 128-bit. Default: true
EnableCopyAccess Boolean Optional. If true, enable copying
and accessing 40-bit. Default: true
EnablePlainText Boolean Optional. Enable plaintext metadata
128-bit; available only for Acrobat 6.
Default: false
FlattenerOptions PrintFlattenerOptions Optional. The printing flattener
options
FlattenerPreset String Optional. Transparency flattener
style name. Default: Custom
FontSubsetThreshold Double Optional. Include a subset of fonts
when less than this percentage of
characters are used. Range: 0.0 to
100.0. Default: 100.0
GenerateThumbnails Boolean Optional. If true, generate
thumbnails for the saved document.
Default: true
GrayscaleCompression AiCompressionQuality Optional. Specifies how grayscale
bitmap images are compressed.
Default: 1 aiNoCompression
GrayscaleDownsampling Double Optional. If zero, no downsampling,
otherwise, the resolution to
downsample grayscale images to.
Default: 150.0
CHAPTER 1: VBScript Object Reference PDFSaveOptions 161

Property Value type What it is


GrayscaleDownsampling- Double Optional. Downsample if the
ImageThreshold image’s resolution is above this
value. Default: 225.0
GrayscaleDownsampling- AiDownsampleMethod Optional. How should grayscale
Method bitmap images be resampled.
Default: 0 aiNoDownsample
GrayscaleTileSize Long Optional. Tile size when
compressing with JPEG2000.
Default: 256
MonochromeCompression AiMonochromeCompression Optional. How should monochrome
bitmap images be compressed.
Default:
0 aiNoMonoCompression

MonochromeDownsampling Double Optional. The resolution to


downsample images to. If 0, no
downsampling. Default: 300.0
MonochromeDownsampling- Double Optional. Downsample if the
ImageThreshold image’s resolution is above this
value. Default: 450
MonochromeDownsampling- AiDownsampleMethod Optional. How monochrome
Method bitmap images are resampled.
Default: aiNoDownsample
Offset Double Optional. Offset from artwork to
draw printer marks. Default: 0
Optimization Boolean Optional. If true, saved PDF are
optimized for fast web viewing.
Default: false
OutputCondition String Optional. An optional comment to
add to the PDF file, describing the
intended printing condition.
Default: not included
OutputConditionID String Optional. The name of a registered
printing condition. Default: not
included
PageInformation Boolean Optional. If true, draw page
information. Default: false
PageMarksType AiPageMarksStyle Optional. The page marks style.
Default: aiPageMarksStandard
PDFAllowPrinting AiPDFPrintAllowedEnum Optional. PDF security printing
permission. Default:
3 aiPrint128HighResolution
CHAPTER 1: VBScript Object Reference PDFSaveOptions 162

Property Value type What it is


PDFChangesAllowed AiPDFChangesAllowedEnum Optional. PDF security changes
allowed. Default: 5
Change128AnyChanges

PDFPreset String Optional. PDF preset name


PDFXStandard AiPDFXStandard Optional. The PDF standard with
which this document complies.
Default: 1 aiPDFXNone
PDFXStandardDescription string Optional. A description of the PDF
standard from the selected preset.
PermissionPassword String Optional. A password string to
restrict editing security settings.
Default: no string
PreserveEditability Boolean Optional. If true, preserve Illustrator
editing capabilities when saving the
document. Default: true
PrinterResolution Double Optional. Flattening printer
resolution. Default: 800.0
RegistrationMarks Boolean Optional. Draw registration marks.
Default: false
RequireDocumentPassword Boolean Optional. If true, a password are
required to open the document.
Default: false
RequirePermissionPassword Boolean Optional. If true, a password are
used to restrict editing security
settings. Default: false
Trapped Boolean Optional. If true, manual trapping
has been prepared for the
document.
Default: false
TrimMarks Boolean Optional. If true, draw trim marks.
Default: false
TrimMarkWeight AiPDFTrimMarkWeight Optional. Trim mark weight. Default:
1 aiTrimMarkWeight0125

ViewAfterSaving Boolean Optional. If true, view PDF after


saving. Default: false
CHAPTER 1: VBScript Object Reference PDFSaveOptions 163

Saving to PDF

This script illustrates how to save the frontmost document as PDF.


'Saves current document as PDF to dest
'dest contains the full path and file name to save to

Sub exportFileAsPDF (dest)


Set appRef = CreateObject("Illustrator.Application")
Set saveOptions = CreateObject("Illustrator.PDFSaveOptions")
saveOptions.ColorCompression = 6 'aiJPEGHigh
saveOptions.Compatibility = 5 'aiAcrobat5
Set frontDocument = appRef.ActiveDocument
Call frontDocument.SaveAs (dest, saveOptions)
End Sub
CHAPTER 1: VBScript Object Reference PhotoshopFileOptions 164

PhotoshopFileOptions
Options applied when opening or placing an Adobe Photoshop file.

PhotoshopFileOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
LayerComp String The name of the layer composition to use when
the document is converted.
Parent Object Read only. This object’s parent object.
PreserveHiddenLayers Boolean If true, preserve hidden layers when the
document is converted. Default: false
PreserveImageMaps Boolean If true, the image maps are preserved when the
document is converted. Default: true
PreserveLayers Boolean If true, layers are preserved when the document
is converted. Default: true
PreserveSlices Boolean If true, slices are preserved when the document
is converted. Default: true

Opening a Photoshop document


'Opens a PSD file and retains its layers
'using the PhotoshopFileOptions object
'dest contains the full path and file name of the file to open

Sub photoShopFileOptions(dest)
Set appRef = CreateObject("Illustrator.Application")

With appRef.Preferences.PhotoshopFileOptions
PreserveLayers = True
PixelAspectRatioCorrection = False
End With

Set docRef = appRef.Open(dest, 1)


End Sub
CHAPTER 1: VBScript Object Reference PlacedItem 165

PlacedItem
An artwork item placed in a document as a linked file. For example, an artwork item created using the File
> Place command in Illustrator or by using the Add method of the PlacedItems collection object. For
information, see “PlacedItems” on page 169.

PlacedItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Indicates whether this object is used to create a
knockout, and if so, what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
BoundingBox Variant Array of Read-only. Dimensions of the object, regardless of
4 Doubles transformations.
ContentVariable Variable The Variable bound to this object.

It is not necessary to set the type of the


ContentVariable before binding. Illustrator
automatically sets the type to be the same as the object
to which it is bound.
ControlBounds Variant Array of Read-only. The bounds of the object, including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, this object is editable.
File String The file containing the placed object.
GeometricBounds Variant Array of Read-only. The bounds of the object, excluding stroke
4 Doubles width.
Height Double The height of the object, based on GeometricBounds.
Hidden Boolean If true, this object is hidden.
IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer to which this object belongs.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this object is locked
Matrix Matrix The transformation matrix applied to the object.
Name String The name of this object.
Note String The note assigned to this object.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
CHAPTER 1: VBScript Object Reference PlacedItem 166

Property Value type What it is


Parent object Read-only. The object that contains this object.
Position Variant Array of The position (in points) of the top left corner of the item
2 Doubles in the format [x, y]. Does not include stroke weight.
Selected Boolean If true, this object is selected.
Sliced Boolean If true, this object is sliced.
Tags Tags Read-only. The tags contained in this object.
Top Double The position of the top of the item (in points, measured
from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this object.
VisibilityVariable Variable The Variable bound to this object.
VisibleBounds Variant Array of Read-only. The visible bounds of the object, including
4 Doubles stroke width.
Width Double The width of the object, based on GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, the text frame objects are wrapped around this
object (text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

PlacedItem methods

Method Returns What it does


Copy Nothing Copies the item to the clipboard;
() the associated document must be
the frontmost document.
Cut Nothing Cuts the item to the clipboard; the
() associated document must be the
frontmost document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object], with the location and position for
[insertionLocation as AiElementPlacement]) the copy.
CHAPTER 1: VBScript Object Reference PlacedItem 167

Method Returns What it does


Embed Nothing Embeds this art in the document.
() Converts the art to art item
objects as needed and deletes
this object.
Relink Nothing Relinks the art object with the file
(linkFile as String) that defines its content.
Resize Nothing Scales the art item where scaleX
(scaleX as Double, is the horizontal scaling factor
scaleY as Double, and scaleY is the vertical scaling
[, changePositions as Boolean]
factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to the


(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the art item by


(transformationMatrix as Matrix, applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset
[, transformObjects as Boolean]
and deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.
CHAPTER 1: VBScript Object Reference PlacedItem 168

Changing the selection in placed items

This script illustrates how to change the selection of PlacedItems.


'Toggles selection of all placed items in the document

Set appRef = CreateObject("Illustrator.Application")

For Each placedArt In appRef.ActiveDocument.PlacedItems


placedArt.Selected = Not (placedArt.Selected)
Next
CHAPTER 1: VBScript Object Reference PlacedItems 169

PlacedItems
A collection of placed art items. See “PlacedItem” on page 165 for an example of use.

PlacedItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

PlacedItems methods

Method Returns What it does


Add PlacedItem Creates a new PlacedItem object. Use to place new art in a
() document. Use the file property of the resulting object to
link the file containing the artwork. For information, see
“PlacedItem” on page 165.
Index Long Returns the index position of the object within the
(item as PlacedItem) collection.
Item PlacedItem Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference PluginItem 170

PluginItem
An art item created by an Illustrator plug-in such as the blend tool. Scripts can create a plug-in item using
PlacedItem.trace or RasterItem.trace, and can copy existing plug-in items using the duplicate
method, or copy and paste them, but cannot create PluginItem objects directly.

PluginItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so, what
kind.
BlendingMode AiBlendModes The mode used when compositing an object.
ControlBounds Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, this item is editable.
GeometricBound Variant Array of Read-only. The bounds of the object excluding stroke
4 Doubles width.
Height Double The height of the item, based on GeometricBounds.
Hidden Boolean If true, this item is hidden.
IsIsolated Boolean If true, this object is isolated.
IsTracing Boolean Read-only. If true, this plug-in group represents a
vector art item created by tracing a raster art item. The
tracing property contains the tracing object
associated with the options used to create it.
Layer Layer Read-only. The layer this item belongs to.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this item is locked
Name String The name of this item.
Note String The note assigned to this PluginItem.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Parent Object Read-only. The object that contains this item.
Position Variant Array of The position (in points) of the top left corner of the item
2 Doubles in the format [x, y]. Does not include stroke weight.
Selected Boolean If true, this item is selected.
Sliced Boolean If true, this item is sliced.
CHAPTER 1: VBScript Object Reference PluginItem 171

Property Value type What it is


Tags Tags Read-only. The tags contained in this item.
Top Double The position of the top of the item (in points, measured
from the bottom of the page).
Tracing TracingObject Read-only. When this plug-in group was created by
tracing (IsTracing is true), the tracing object
associated with the options used to create it.
URL String The value of the Adobe URL tag assigned to this item.
VisibilityVariable Variable The Variable bound to this item.
VisibleBounds Variant Array of Read-only. The visible bounds of the item including
4 Doubles stroke width.
Width Double The width of the item, based on GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, the text frame objects are wrapped around this
object (text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

PluginItem methods

Method Returns What it does


Copy Nothing Copies the item to the
() clipboard; the associated
document must be the
frontmost document.
Cut Nothing Cuts the item to the
() clipboard; the associated
document must be the
frontmost document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item,


([relativeObject as Object], optionally with the location
[insertionLocation as AiElementPlacement]) and position for the copy.
CHAPTER 1: VBScript Object Reference PluginItem 172

Method Returns What it does


Move Nothing Moves the art item to a new
(relativeObject as Object, location and position.
insertionLocation as AiElementPlacement)

Resize Nothing Scales the art item where


(scaleX as Double, scaleX is the horizontal
scaleY as Double, scaling factor and scaleY is
[, changePositions as Boolean]
the vertical scaling factor;
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean] 100.0 = 100%
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to


(angle as Double, the current rotation. The
[, changePositions as Boolean] object is rotated
[, changeFillPatterns as Boolean]
counter-clockwise if the
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] Angle value is positive,
[, rotateAbout as AiTransformation]) clockwise if the value is
negative.
Trace PluginItem Converts the raster art for this
() object to vector art, using
default options. Reorders the
placed art into the source art
of a plug-in group, and
converts it into a group of
filled and/or stroked paths
that resemble the original
image.

Creates and returns a


PluginItem object that
references a TracingObject
object.
Transform Nothing Transforms the art item by
(transformationMatrix as Matrix, applying a transformation
[, changePositions as Boolean] matrix.
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])
CHAPTER 1: VBScript Object Reference PluginItem 173

Method Returns What it does


Translate Nothing Repositions the art item
([deltaX as Double] relative to the current
[, deltaY as Double] position, where deltaX is the
[, transformObjects as Boolean]
horizontal offset and deltaY
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean] is the vertical offset.
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s


(zOrderCmd as AiZOrderMethod) position in the stacking order
of the group or layer (Parent)
of this object.

Copying a plug-in item

This example demonstrates how to create a new PluginItem by copying an existing PluginItem.
'Copies and pastes the first plugin item in the current
'document

Set appRef = CreateObject("Illustrator.Application")

Set frontDocument = appRef.ActiveDocument


If (frontDocument.PluginItems.Count > 0) Then
Set pluginArt = frontDocument.PluginItems(1)
pluginArt.Copy
frontDocument.Paste
Else
MsgBox "There is no plug-in art in the front document"
End If
CHAPTER 1: VBScript Object Reference PluginItems 174

PluginItems
A collection of PluginItem objects in a document.

PluginItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Layer or Read-only. The object’s container.
GridRepeatConfig

PluginItems methods

Method Returns What it does


Index Long Returns the index position of the object within the
(item as PluginItem) collection.
Item PluginItem Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference PPDFile 175

PPDFile
Associates file information with a PostScript Printer Description (PPD) file.

PPDFile properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The PPD model name.
PPDInfo PPDFileInfo The PPD file information.
CHAPTER 1: VBScript Object Reference PPDFileInfo 176

PPDFileInfo
Information about a PostScript Printer Description (PPD) file.

PPDFileInfo properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
LanguageLevel String The PostScript language level.
File File Path specification for the PPD file.
ScreenList Variant List of color separation screens.
ScreenSpotFunctionList Variant List of color separation screen spot functions.

Using a PPD file


'Displays the name, postscript level and path data contained in
'each PPD file in a text frame

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()
x = 30
y = docRef.Height - 30

For Each ppd In appRef.PPDFileList


' get data for each PPD
sPPD = ppd.Name & vbCrLf
sPPD = sPPD & vbTab & "PS Level "
sPPD = sPPD & ppd.PPDInfo.LanguageLevel & vbCrLf
sPPD = sPPD & vbTab & "Path: "
sPPD = sPPD & ppd.PPDInfo.File & vbCrLf

' display data with a textFrame


Set textRef = docRef.TextFrames.Add()
textRef.TextRange.CharacterAttributes.Size = 8
textRef.Contents = sPPD
textRef.Top = y
textRef.Left = x
appRef.Redraw
y = y - textRef.Height
Next
CHAPTER 1: VBScript Object Reference Preferences 177

Preferences
Specifies the preferred options for AutoCAD, FreeHand, PDF, and Photoshop files.

Preferences properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
AutoCADFileOptions AutoCADFileOptions Read-only. Options to use when opening or
placing an AutoCAD file.
FreeHandFileOptions FreeHandFileOptions Read-only. Options to use when opening or
placing a FreeHand file.
Parent Object Read-only. The object’s container.
PDFFileOptions PDFFileOptions Read-only. Options to use when opening or
placing a PDF file.
PhotoshopFileOptions PhotoshopFileOptions Read-only. Options to use when opening or
placing a Photoshop file.

Preferences methods

Method Returns What it does


GetBooleanPreference Boolean Gets the boolean value of a given application preference.
(key as String)

GetIntegerPreference Integer Gets the integer value of a given application preference.


(key as String)

GetRealPreference Double Gets the real-number value of a given application preference.


(key as String)

GetStringPreference String Gets the string value of a given application preference.


(key as String)

RemovePreference Nothing Deletes a given application preference.


(key as String)

SetBooleanPreference Nothing Sets the boolean value of a given application preference.


(key as String,
value as Boolean

SetIntegerPreference Nothing Sets the integer value of a given application preference.


(key as String,
value as Integer)
CHAPTER 1: VBScript Object Reference Preferences 178

Method Returns What it does


SetRealPreference Nothing Sets the real-number value of a given application preference.
(key as String,
value as Double)

SetStringPreference Nothing Sets the string value of a given application preference.


(key as String,
value as String)
CHAPTER 1: VBScript Object Reference PrintColorManagementOptions 179

PrintColorManagementOptions
Contains information used for color management of the document.

PrintColorManagementOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ColorProfileMode AiPrintColorProfile The color management profile mode. Default: 1
aiSourceProfile

Intent AiPrintColorIntent The color management intent type. Default: 2


aiRelativeColorimetric

Name String The color management profile name.

Managing colors for printing


'Creates a new document with a path item,
'creates a PrintColorManagementOptions object and assigns it
'to a PrintOptions object, then prints with each color intent

'create a simple path item and apply a graphic style to it


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add
Set pathItem = docRef.PathItems.Rectangle(600, 200, 200, 200)
docRef.GraphicStyles(2).ApplyTo pathItem

Set colorOptions = CreateObject("Illustrator.PrintColorManagementOptions")


Set printOptionsRef = CreateObject("Illustrator.PrintOptions")
printOptionsRef.ColorManagementOptions = colorOptions
colorOptions.Name = "ColorMatch RGB"

'Print the current document once for each color intent.


colorOptions.Intent = 3 'aiAbsoluteColorimetric
docRef.print
colorOptions.Intent = 0 'aiPerceptualIntent
docRef.print
colorOptions.Intent = 2 'aiRelativeColorimetric
docRef.print
colorOptions.Intent = 1 'aiSaturationIntent
docRef.print
CHAPTER 1: VBScript Object Reference PrintColorSeparationOptions 180

PrintColorSeparationOptions
Information about the color separations to be used in printing the document.

PrintColorSeparationOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
ColorSeparationMode AiPrintColorSeparationMode The color separation type.
Default: 0 aiComposite
ConvertSpotColors Boolean If true, spot colors are converted to
process colors. Default: false
InkList Variant Array of Ink The list of inks for color separation.
OverPrintBlack Boolean If true, overprint in black. Default: false

Managing print color separations


'Creates a new document, adds symbol items, create
'a PrintColorSeparationOptions object and
'print with various separation settings

'Create a new document and add some artwork


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add()
y = docRef.Height - 30
i = 1
Do While (i < 2)
Set symbolRef = docRef.Symbols(i)
Set itemRef = docRef.SymbolItems.Add(symbolRef)
itemRef.Top = y
itemRef.Left = 100
y = (y - (itemRef.Height + 10))
i = i + 1
Loop
appRef.Redraw

'Create a separations object and assign it a


'PrintOptions object
Set printOpts = CreateObject("Illustrator.printOptions")
Set separationOpts = CreateObject("Illustrator.PrintColorSeparationOptions")
printOpts.ColorSeparationOptions = separationOpts

'Print with various separation options


separationOpts.ConvertSpotColors = True
separationOpts.OverPrintBlack = True
separationOpts.ColorSeparationMode = 0 'aiComposite
docRef.PrintOut printOpts

separationOpts.ColorSeparationMode = 2 'aiInRIPSeparation
CHAPTER 1: VBScript Object Reference PrintColorSeparationOptions 181

docRef.PrintOut printOpts

separationOpts.ConvertSpotColors = False
separationOpts.OverPrintBlack = False
separationOpts.ColorSeparationMode = 1 'aiHostBasedSeparation
docRef.PrintOut printOpts
CHAPTER 1: VBScript Object Reference PrintCoordinateOptions 182

PrintCoordinateOptions
Information about the media and associated printing parameters.

PrintCoordinateOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Emulsion Boolean If true, flip artwork will be flipped horizontally.
Default: false
FitToPage Boolean Whether to proportionally scale the artwork to fit on
media. Default: false
HorizontalScale Double The horizontal scaling factor expressed as a percentage
(100 = 100%) Range: 1.0 to 10000.0. Default: 100.0
Orientation AiPrintOrientation The artwork orientation. Default: 0 aiPortrait

Position AiPrintPosition The artwork position on media. Default: 5


aiTranslateCenter

Tiling AiPrintTiling The page tiling mode.


Default: 0 aiTileSingleFullPage
VerticalScale Double The vertical scaling factor expressed as a percentage
(100 = 100%) Range: 1.0 to 10000.0. Default: 100.0
CHAPTER 1: VBScript Object Reference PrintCoordinateOptions 183

Managing print coordinates


'Creates a new document with text extending off the page
'and print it with various Coordinate Options

'Create a TextFrame that extends off the page


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add()
Set textRef = docRef.TextFrames.Add()
textRef.Contents = "This should extend off the page"
textRef.Left = -50
textRef.Top = 600
textRef.Width = docRef.Width + 100
textRef.Height = 150
appRef.Redraw

'Print the item using various settings of the


'PrintCoordinateOptions object
Set coordinateOptions = CreateObject("Illustrator.PrintCoordinateOptions")
Set printOptions = CreateObject("Illustrator.printOptions")
printOptions.coordinateOptions = coordinateOptions

coordinateOptions.Emulsion = True ' reverse from right to left


coordinateOptions.FitToPage = True ' fit artwork to page size
coordinateOptions.Orientation = 1 'aiLandscape
docRef.PrintOut printOptions

coordinateOptions.Emulsion = False
coordinateOptions.Orientation = 0 'aiPortrait
coordinateOptions.HorizontalScale = 50
coordinateOptions.VerticalScale = 50
docRef.PrintOut printOptions
CHAPTER 1: VBScript Object Reference Printer 184

Printer
Associates an available printer with printer information. To request a list of printers, you must first have a
document open or an error is returned.

Printer properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The printer name
PrinterInfo PrinterInfo The printer information
CHAPTER 1: VBScript Object Reference PrinterInfo 185

PrinterInfo
Contains all configuration information about a printer.

PrinterInfo properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
BinaryPrintingSupport Boolean If true, the printer supports binary printing.
ColorSupport AiPrinterColorMode The printer color capability.
CustomPaperSupport Boolean If true, the printer supports custom paper
sizes.
CustomPaperTransverse-Sup Boolean If true, the printer supports custom paper
port transverse.
DeviceResolution Double The printer default resolution.
InRIPSeparationSupport Boolean If true, the printer supports InRIP color
separation.
MaxDeviceResolution Double The printer maximum device resolution.
MaxPaperHeight Double Custom paper’s maximum height.
MaxPaperHeightOffset Double Custom paper’s maximum height offset.
MaxPaperWidth Double Custom paper’s maximum width.
MaxPaperWidthOffset Double Custom paper’s maximum width offset.
MinPaperHeight Double Custom paper’s minimum height.
MinPaperHeightOffset Double Custom paper’s minimum height offset.
MinPaperWidth Double Custom paper’s minimum width.
MinPaperWidthOffset Double Custom paper’s minimum width offset.
PaperSizes Variant Array of The list of supported paper sizes.
Paper

PostScriptLevel AiPrinterPostScript The PostScript language level.


LevelEnum

PrinterType AiPrinterTypeEnum The printer type.


CHAPTER 1: VBScript Object Reference PrinterInfo 186

Finding printers
'Uses the PrinterList to obtain the name
'of each printer and displays it in a text frame

noFailure = True
Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()


Set textRef = docRef.TextFrames.Add()
textRef.Top = docRef.Height - 50
textRef.Left = 50
sData = "Printers:"

For Each printerRef In appRef.PrinterList


sData = sData & vbCrLf & printerRef.Name
Next

textRef.Contents = sData
appRef.Redraw

Finding printer information


'Creates a document with a text frame then
'loops through the printer list, showing info on
'each printer using the PrintInfo attribute

'create a new document


Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()

'add title text frame


Set textRef1 = docRef.TextFrames.Add()
textRef1.Contents = "Checking Printers..."
textRef1.Top = 600
textRef1.Left = 200
appRef.Redraw

'for each printer, list the PS support and InHostRip support


For Each printerRef In appRef.PrinterList
sPrintInfo = sPrintInfo & printerRef.Name & vbCrLf
sPrintInfo = sPrintInfo & vbTab & "PS Level = "
sPrintInfo = sPrintInfo & CStr(printerRef.PrinterInfo.PostScriptLevel)_
& vbCrLf
sPrintInfo = sPrintInfo & vbTab & "Device Resolution = "
sPrintInfo = sPrintInfo & CStr(printerRef.PrinterInfo.DeviceResolution)_
& vbCrLf
sPrintInfo = sPrintInfo & vbTab & "InRIPSeparation Support = "
sPrintInfo = sPrintInfo & CStr(printerRef.PrinterInfo.InRIPSeparationSupport) &
vbCrLf
Next

textRef1.Contents = sPrintInfo
appRef.Redraw
CHAPTER 1: VBScript Object Reference PrintFlattenerOptions 187

PrintFlattenerOptions
Contains flattening options for use when Illustrator outputs artwork that contains transparency into a
non-native format.

PrintFlattenerOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ClipComplexRegions Boolean If true, clip complex regions. Default: false
ConvertStrokesToOutlines Boolean If true, convert all strokes to outlines. Default:
false

ConvertTextToOutlines Boolean If true, convert all text to outlines. Default:


false

FlatteningBalance Double The flattening balance. Range: 0.0 to 100.0.


Default: 100.0
GradientResolution Long The gradient resolution in dots per inch (dpi).
Range: 1.0 to 9600.0. Default: 300.0
Overprint AiPDFOverprint Whether to preserve, discard, or simulate
overprinting. Default: 1
aiPreservePDFOverprint

RasterizationResolution Double The rasterization resolution in dots per inch


(dpi). Range: 1.0 to 9600.0. Default: 300.0
CHAPTER 1: VBScript Object Reference PrintFlattenerOptions 188

Setting print flattening


'Creates a document, adds a rectangle
'with a graphic style applied, then
'prints the document with "low" and "high"
'flattener settings

Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()


Set itemRef = docRef.PathItems.Rectangle(600, 200, 200, 200)
docRef.GraphicStyles(2).ApplyTo itemRef

'Create a PrintFlattenerOptions object and


'assign it to a PrintOptions object.
Set flatOpts = CreateObject("Illustrator.PrintFlattenerOptions")
Set printOpts = CreateObject("Illustrator.printOptions")
printOpts.FlattenerOptions = flatOpts

'print faster with low resolution


flatOpts.ClipComplexRegions = True
flatOpts.GradientResolution = 30
flatOpts.RasterizationResolution = 30
docRef.PrintOut printOpts

'print slower with higher resolution


flatOpts.ClipComplexRegions = False
flatOpts.GradientResolution = 300
flatOpts.RasterizationResolution = 300
docRef.PrintOut printOpts
CHAPTER 1: VBScript Object Reference PrintFontOptions 189

PrintFontOptions
Contains information about font downloading and substitution for the fonts used for printing a document.

PrintFontOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
DownloadFonts AiPrintFontDownloadMode The font download mode.
Default: 1 aiDownloadSubset
FontSubstitution AiFontSubstitutionPolicy The font substitution policy.
Default: 1 aiSubstituteOblique

Setting print font options


'Creates a new document with a text item,
'creates a new print font options object then
'prints with specified font options

Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()


Set textRef = docRef.TextFrames.Add()
textRef.Top = 600
textRef.Left = 50
textRef.Contents = "PrintFontOptions object"

'Create a PrintFontOptions object and


'assign it to a PrintOptions object.
Set fontOpts = CreateObject("Illustrator.PrintFontOptions")
Set printOpts = CreateObject("Illustrator.printOptions")
printOpts.FontOptions = fontOpts

fontOpts.DownloadFonts = 2 'aiDownloadComplete
fontOpts.FontSubstitution = 0 'aiSubstituteOblique

'print it
docRef.PrintOut printOpts
CHAPTER 1: VBScript Object Reference PrintJobOptions 190

PrintJobOptions
Contains information about how a job is to be printed.

PrintJobOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
ArtboardRange String The artboard range to be printed if
PrintAllArtboards is false. Default: 1-

BitmapResolution Double The bitmap resolution. Minimum 0.0.


Default: 0.0
Collate Boolean If true, collate print pages. Default: false
Copies Long The number of copies to print. Minimum: 1
Default: 1
Designation AiPrintArtworkDesignation The layers/objects to be printed.
Default: 0 aiVisiblePrintableLayers
File String The file to which to print.
Name String The print job name.
PrintAllArtboards Boolean Indicates whether to print all artboards.
Default: true
PrintArea AiPrintingBounds The printing bounds.
Default: 0 aiArtboardBounds
PrintAsBitmap Boolean If true, print as bitmap. Default: false
ReversePages Boolean If true, print pages in reverse order.
Default: false

Printing with job options


'Creates a new document containing text in visible,
'printable, non-visible and non-printable layers then
'prints document with different designations to demonstrate
'how each designation affects which layers are printed

Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()

'create a visible, printable item


Set textRef_1 = docRef.Layers(1).TextFrames.Add()
textRef_1.Contents = "Visible and Printable"
textRef_1.Top = 600
textRef_1.Left = 200
CHAPTER 1: VBScript Object Reference PrintJobOptions 191

'create a visible, non-printable item


Set layerRef_2 = docRef.Layers.Add()
Set textRef_2 = layerRef_2.TextFrames.Add()
textRef_2.Contents = "Visible and Non-Printable"
textRef_2.Top = 500
textRef_2.Left = 250
layerRef_2.Printable = False

' create a non-visible item


Set layerRef_3 = docRef.Layers.Add()
Set textRef_3 = layerRef_3.TextFrames.Add()
textRef_3.Contents = "Non-Visible"
textRef_3.Top = 400
textRef_3.Left = 300
layerRef_3.Visible = False
appRef.Redraw

' Print with various jobOptions


Set jobOptionsRef = CreateObject("Illustrator.PrintJobOptions")
Set printOpts = CreateObject("Illustrator.printOptions")
printOpts.JobOptions = jobOptionsRef

jobOptionsRef.Designation = 2 'aiAllLayers
jobOptionsRef.ReversePages = True
docRef.PrintOut printOpts

jobOptionsRef.Designation = 1 'aiVisibleLayers
jobOptionsRef.ReversePages = False
jobOptionsRef.PrintAsBitmap = True
docRef.PrintOut printOpts

jobOptionsRef.Designation = 0 'aiVisiblePrintableLayers
jobOptionsRef.File = "C:\temp\printJobTest1.ps"
docRef.PrintOut printOpts
CHAPTER 1: VBScript Object Reference PrintOptions 192

PrintOptions
Collects all information about all printing options including flattening, color management, coordinates,
fonts, and paper. Used as an argument to the PrintOut method.

PrintOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator
Application object.

ColorManagementOptions PrintColorManagementOptions The printing color management


options.
ColorSeparationOptions PrintColorSeparationOptions The printing color separation
options.
CoordinateOptions PrintCoordinateOptions The printing coordinate options.
FlattenerOptions PrintFlattenerOptions The printing flattener options.
FlattenerPreset String The transparency flattener preset
name.
FontOptions PrintFontOptions The printing font options.
JobOptions PrintJobOptions The printing job options.
PageMarksOptions PrintPageMarksOptions The printing page marks options.
PaperOptions PrintPaperOptions The paper options.
PostScriptOptions PrintPostScriptOptions The PostScript options for printing.
PPDName String The PPD name.
PrinterName String The printer name.
PrintPreset String The print style.
CHAPTER 1: VBScript Object Reference PrintOptions 193

Setting print options


'Creates a new document and add some symbol items,
'creates a variety of print options and assign each
'to a PrintOptions object, then print the documennt
'with the combined PrintOptions object.

Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()

y = docRef.Height - 30
i = 1
Do While (i < 2)
Set symbolRef = docRef.Symbols(i)
Set itemRef = docRef.SymbolItems.Add(symbolRef)
itemRef.Top = y
itemRef.Left = 100
y = (y - (itemRef.Height + 10))
i = i + 1
Loop
appRef.Redraw

'create multiple options and assign to PrintOptions object


Set printOpts = CreateObject("Illustrator.printOptions")
Set colorOpts = CreateObject("Illustrator.PrintColorManagementOptions")
colorOpts.Name = "ColorMatch RGB"
colorOpts.Intent = 1 'aiSaturationIntent
printOpts.ColorManagementOptions = colorOpts

Set jobOpts = CreateObject("Illustrator.PrintJobOptions")


jobOpts.Designation = aiAllLayers
jobOpts.ReversePages = True
printOpts.JobOptions = jobOpts

Set coordinateOpts = CreateObject("Illustrator.PrintCoordinateOptions")


coordinateOpts.FitToPage = True
printOpts.coordinateOptions = coordinateOpts

Set flattenerOpts = CreateObject("Illustrator.PrintFlattenerOptions")


flattenerOpts.ClipComplexRegions = True
flattenerOpts.GradientResolution = 60
flattenerOpts.RasterizationResolution = 60
printOpts.FlattenerOptions = flattenerOpts

docRef.PrintOut printerOpts
CHAPTER 1: VBScript Object Reference PrintPageMarksOptions 194

PrintPageMarksOptions
The options for printing page marks.

PrintPageMarksOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
BleedOffsetRect Variant Array of The bleed offset rectangle.
4 Doubles
ColorBars Boolean If true, enable color bars printing. Default: false
MarksOffsetRect Variant Array of The page marks offset rectangle.
4 Doubles
PageInfoMarks Boolean If true, enable page info marks printing. Default: false
PageMarksType AiPageMarksStyle The predefined page marks style name.
Default: 1 aiPageMarksRoman
RegistrationMarks Boolean If true, enable registration marks printing.
Default: false
TrimMarks Boolean If true, enable trim marks printing. Default: false
TrimMarksWeight Double Stroke weight of trim marks. Minimum: 0.0
Default: 0.125

Setting page mark options


'Creates a new document with a rectangle, creates a
'PrintPageMarksOptions object and assigns it
'to a PrintOptions object sets some attributes then prints

'create a simple path item for printing


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add
Set pathItem = docRef.PathItems.Rectangle(600, 200, 200, 200)
docRef.GraphicStyles(2).ApplyTo pathItem

'Create a PrintCoordinateOptions object and assign it


'to a PrintOptions object
Set pageMarksOpts = CreateObject("Illustrator.PrintPageMarksOptions")
pageMarksOpts.ColorBars = True
pageMarksOpts.PageInfoMarks = True
pageMarksOpts.RegistrationMarks = True
pageMarksOpts.TrimMarks = True

Set printerOpts = CreateObject("Illustrator.printOptions")


printerOpts.PageMarksOptions = pageMarksOpts

'print it
docRef.PrintOut printerOpts
CHAPTER 1: VBScript Object Reference PrintPaperOptions 195

PrintPaperOptions
Contains information about the paper to be used in a print job.

PrintPaperOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Height Double The custom height (in points) for using the custom paper.
Default: 0.0
Name String The paper’s name.
Offset Double Custom offset (in points) for using the custom paper. Default: 0.0
Transverse Boolean If true, transverse the artwork (rotate 90 degrees) on the custom
paper. Default: false
Width Double The custom width in points, for using the custom paper. Default: 0.0
CHAPTER 1: VBScript Object Reference PrintPostScriptOptions 196

PrintPostScriptOptions
Specifies the options to be used when printing to a PostScript printer.

PrintPostScriptOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator
Application object.

BinaryPrinting Boolean If true, print in binary mode.


Default: false
CompatibleShading Boolean If true, use PostScript level 1
compatible gradient and gradient
mesh printing. Default: false
ForceContinuousTone Boolean If true, force continuous tone.
Default: false
ImageCompression AiPostScriptImageCompressionTyp The image compression type. Default:
e 0 aiImageCompressionNone

NegativePrinting Boolean If true, print in negative mode.


Default: false
PostScriptLevel AiPrinterPostScriptLevelEnum The PostScript language level.
Default: 2 aiLevel2
ShadingResolution Double The shading resolution Range: 1.0 to
9600.0. Default: 300.0
CHAPTER 1: VBScript Object Reference PrintPostScriptOptions 197

Setting PostScript options


'Creates a new document, adds text, creates
'a new PrintPostScriptOptions object then
'prints with several postscript levels

'Create a new document and add a TextFrame


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add()
Set textRef = docRef.TextFrames.Add()
textRef.Top = 600
textRef.Left = 50
textRef.Contents = "PrintPostScriptOptions object"

'Create a PrintPostScriptOptions object and


'assign it to a PrintOptions object.
Set psOpts = CreateObject("Illustrator.PrintPostScriptOptions")
Set printOpts = CreateObject("Illustrator.printOptions")
printOpts.PostScriptOptions = psOpts

'print with different PS levels


psOpts.PostScriptLevel = 2 'aiPSLevel2
docRef.PrintOut printOpts

psOpts.PostScriptLevel = 3 'aiPSLevel3
docRef.PrintOut printOpts
CHAPTER 1: VBScript Object Reference RadialRepeatConfig 198

RadialRepeatConfig
Specifies radial repeat art configuration options.

RadialRepeat properties

Property Value type What it is


Applicatio Application Read-only. The Illustrator Application object.
n

numberOfIn Long Number of repeat instances you want in the repeated


stances
artwork.
Default value:8
Radius double Radius of the circle around which radial repeat is
created.
Default value: -1
ReverseOve Boolean Reverse overlap of radial repeat art.
rlap
Default value: false
CHAPTER 1: VBScript Object Reference RadialRepeatItem 199

RadialRepeatItem
Specifies radial repeat item options.

RadialRepeatItem properties

Property Value type What it is


parent object Read-only. The object’s container.
RadialConfig RadialRepeatConfi Read-only. Radial repeat configuration for repeat
g
art.
URL String The value of the Adobe URL tag assigned to this
path item.
Width Double The width of the radial repeat item, based on the
GeometricBounds.

RadialRepeatItem methods

Method Returns What it does

duplicate RadialRepeatItem Creates a duplicate of the selected object.


([relativeObject as
object]
[,insertionLocation
as
Object])

move RadialRepeatItem Moves the object.


(relativeObject as
Object,
insertionLocation as
AiElementPlacement)

setRadialConfigurati String Updates the radial repeat art.


on
(config as
RadialRepeatConfig,
state as
AiRadialRepeatUpdate
)
CHAPTER 1: VBScript Object Reference RadialRepeatItems 200

RadialRepeatItems
Specifies a collection of radial repeat items.

RadialRepeatItems properties

Property Value type What it is

Application Application Read-only. The Illustrator Application object.

parent object Read-only. The object’s container.

count long Read-only. The number of elements in the


collection.

RadialRepeatItems methods

Method Returns What it does

Add(SourceArt as RadialRepeatItem Creates a radial repeat art


Object,
[Config as
RadialRepeatConfig])

RemoveAll Nothing Deletes all elements.


()
CHAPTER 1: VBScript Object Reference AiRadialRepeatUpdate 201

AiRadialRepeatUpdate
Represents which property of radial repeat gets updated.

RadialRepeatUpdate properties

Property Value type What it is

AiNumberOfInstances constant Updates number of instances of radial repeat


artwork.

AiRadialAll constant Updates all the properties of radial repeat artwork.

AiRadiusOfArt constant Updates the radius of radial repeat artwork.


AiReverseOverlap constant Updates reverse overlap of radial repeat artwork.
CHAPTER 1: VBScript Object Reference RasterEffectOptions 202

RasterEffectOptions
Specifies raster effects settings for the document. All properties are optional.

RasterEffectOptions properties

Property Value type What it is


AntiAliasing Boolean If true, the image is anti-aliased. Default:
false

Application Application Read-only. The Illustrator Application object.


ClippingMask Boolean If true, a clipping mask should be created for
the image. Default: false
ColorModel AiRasterizationColorModel The color model for the rasterization.
Default: aiDefaultColorModel
ConvertSpotColors Boolean If true, all spot colors are converted to process
colors for the image. Default: false
Padding Double The amount of white space (in points) to be
added around the object during rasterization.
Default: .0
Resolution Double The rasterization resolution in dots per inch
(dpi). Range: 72.0 to 2400.0. Default: 300.0
Transparency Boolean If true, the image should use transparency.
Default: false
CHAPTER 1: VBScript Object Reference RasterItem 203

RasterItem
A bitmap art item in a document. A script can create raster items from an external file, and can create new
raster items by copying and pasting or duplicating existing raster items.

RasterItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so,
what kind.
BitsPerChannel Integer Read-only. The number of bits per channel.
BlendingMode AiBlendModes The mode used when compositing an object.
BoundingBox Variant Array of Dimensions of item regardless of transformations.
4 Doubles
Channels Integer Read-only. The number of channels.
Colorants Array of Strings Read-only. The colorants used in the raster art.
ColorizedGrayscale Boolean Read-only. If true, the raster art is a colorized
grayscale image.
ContentVariable Variable The Variable bound to this item. It is not necessary
to set the type before binding.
ControlBounds Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, this item is editable.
Embedded Boolean If true, the Raster art can be embedded within the
illustration.
File String Read-only. The file containing the art.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding stroke
4 Doubles width.
Height Double The height of the item, based on GeometricBounds.
Hidden Boolean If true, this item is hidden.
ImageColorSpace AiImageColorSpace Read-only. The color space of the Raster image.

IsIsolated Boolean If true, this object is isolated.


Layer Layer Read-only. The layer this item belongs to.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this item is locked
CHAPTER 1: VBScript Object Reference RasterItem 204

Property Value type What it is


Matrix Matrix The transformation matrix applied to the item.
Name String The name of this item.
Note String The note assigned to this object.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Overprint Boolean If true, the raster art overprints.
Parent Object Read-only. The object that contains this item.
Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item in the format [x, y]. Does not include stroke
weight.
Selected Boolean If true, this item is selected.
Sliced Boolean If true, this item is sliced.
Status AiRasterLinkState Read-only. The status of the linked image, if the
image is stored externally.
Tags Tags object Read-only. The tags contained in this item.
Top Double The position of the top of the item (in points,
measured from the bottom of the page).
Transparent Boolean Read-only. If true, the raster art is transparent.
URL String The value of the Adobe URL tag assigned to this item.
VisibilityVariable Variable The Variable bound to this item.
VisibleBounds Variant Array of Read-only. The visible bounds of the item including
4 Doubles stroke width.
Width Double The width of the item, based on GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, the text frame objects are wrapped around
this object (text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.
CHAPTER 1: VBScript Object Reference RasterItem 205

RasterItem methods

Method Returns What it does


Colorize Nothing Colorizes the RasterItem with a
(rasterColor as object) CMYK or RGB color.
Copy Nothing Copies the item to the clipboard;
() the associated document must
be the frontmost document.
Cut Nothing Cuts the item to the clipboard;
() the associated document must
be the frontmost document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item,


([relativeObject as Object], optionally with the location and
[insertionLocation as position for the copy.
AiElementPlacement])

Move Nothing Moves the art item to a new


(relativeObject as Object, location and position.
insertionLocation as AiElementPlacement)

Resize Nothing Scales the art item where


(scaleX as Double, scaleX is the horizontal scaling
scaleY as Double, factor and scaleY is the vertical
[, changePositions as Boolean]
scaling factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to


(angle as Double, the current rotation. The object
[, changePositions as Boolean] is rotated counter-clockwise if
[, changeFillPatterns as Boolean]
the Angle value is positive,
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] clockwise if the value is negative.
[, rotateAbout as AiTransformation])
CHAPTER 1: VBScript Object Reference RasterItem 206

Method Returns What it does


Trace PluginItem Converts the raster art for this
() object to vector art, using
default options. Reorders the
raster art into the source art of a
plug-in group, and converts it
into a group of filled and/or
stroked paths that resemble the
original image.

Creates and returns a


PluginItem object that
references a TracingObject
object.
Transform Nothing Transforms the art item by
(transformationMatrix as Matrix, applying a transformation
[, changePositions as Boolean] matrix.
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset
[, transformObjects as Boolean]
and deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position


(zOrderCmd as AiZOrderMethod) in the stacking order of the
group or layer (Parent) of this
object.
CHAPTER 1: VBScript Object Reference RasterItems 207

RasterItems
A collection of RasterItem objects.

RasterItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of elements in the collection.
Parent Object Read-only. The object’s container.

RasterItems methods

Method Returns What it does


Index Long Returns the index position of the object within the
(item as RasterItem) collection.
Item RasterItem Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Creating a raster item


'Creates a new raster item in a new document from a file
'jpgFilePath contains the full path and file name of the file

Sub rasterItemCreate(jpgFilePath)
Set app = CreateObject("Illustrator.Application")
Set myDoc = app.Documents.Add()
Set myPlacedItem = myDoc.PlacedItems.Add()
myPlacedItem.File = jpgFilePath
myPlacedItem.Embed()
End Sub
CHAPTER 1: VBScript Object Reference RasterItems 208

Getting properties of raster items


'Extracts the color space type of the first raster item

Set appRef = CreateObject("Illustrator.Application")


Set rasterArt = appRef.ActiveDocument.RasterItems(1)
Select Case (rasterArt.ImageColorSpace)
Case 3 'aiImageCMYK
' "The first raster item is a CMYK raster item"
Case 2 'aiImageRGB
' "The first raster item is an RGB raster item"
Case 1 'aiImageGrayScale
' "The first raster item is a Grayscale raster item"
End Select
CHAPTER 1: VBScript Object Reference RasterizeOptions 209

RasterizeOptions
Specifies options that may be supplied when rasterizing artwork. All properties are optional.

RasterizeOptions properties

Property Value type What it is


AntiAliasingMethod AiAntiAliasingMethod The type of anti-aliasing method.
Default: aiArtOptimized
Application Application Read-only. The Illustrator Application
object.
BackgroundBlack Boolean If true, the rasterization is done against a
black background (instead of white).
Default: false
ClippingMask Boolean If true, a clipping mask should be created
for the image. Default: false
ColorModel AiRasterizationColorModel The color model for the rasterization.
Default: aiDefaultColorModel
ConvertSpotColors Boolean If true, spot colors should be converted to
process colors for the image.
Default: false
ConvertTextToOutlines Boolean If true, all text is converted to outlines
before rasterization. Default: false
IncludeLayers Boolean If true, the resulting image incorporates
layer attributes (like opacity and blend
mode). Default: false
Padding Double The amount of white space (in points) to
be added around the object during
rasterization. Default: .0
Resolution Double The rasterization resolution in dots per
inch (dpi). Range: 72.0 to 2400.0.
Default: 300.0
Transparency Boolean If true, the image should use
transparency. Default: false
CHAPTER 1: VBScript Object Reference RGBColor 210

RGBColor
An RGB color specification, used to apply an RGB color to a layer or art item.

If the color space of a document is RGB and you specify the color value for a page item in that document
using CMYK, Illustrator will translate the CMYK color specification into an RGB color specification. The same
thing happens if the document’s color space is CMYK and you specify colors using RGB. Since this
translation can lose information, you should specify colors using the class that matches the document’s
actual color space.

RGBColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Blue Double The blue color value. Range: 0.0 to 255.0
Green Double The green color value. Range: 0.0 to 255.0
Red Double The red color value. Range: 0.0 to 255.0

Setting RGB colors

This script sets the default fill color of the frontmost document to yellow using an RGB object. If the color
space of the frontmost document is CMYK, then Illustrator will regard the RGB fill color as a CMYK color
although it is specified using RGB.
'Creates a new RGB color then applies the color to the first path item

Set appRef = CreateObject("Illustrator.Application")


Set newFillColor = CreateObject("Illustrator.RGBColor")
Set frontPath = appRef.ActiveDocument.PathItems(1)

'Define the new color


newFillColor.Red = 255
newFillColor.Green = 255
newFillColor.Blue = 0

frontPath.Filled = True
frontPath.fillColor = newFillColor
CHAPTER 1: VBScript Object Reference Screen 211

Screen
Associates a color separation screen with information to be used for printing.

Screen properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The color separation screen.
ScreenInfo ScreenInfo The color separation screen information.
CHAPTER 1: VBScript Object Reference ScreenInfo 212

ScreenInfo
Contains information about the angle and frequency of the screen to be used for printing.

ScreenInfo properties

Property Value type What it is


Angle Double The screen’s angle in degrees.
Application Application Read-only. The Illustrator Application object.
DefaultScreen Boolean If true, it is the default screen.
Frequency Double The screen’s frequency.

Getting screen information


'Creates a document and displays screen data available
'for first PPD file, in a text frame

'Create a new document and add a TextFrame


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.Documents.Add()
Set textRef = docRef.TextFrames.Add()
textRef.Top = 600
textRef.Left = 50
textRef.Contents = "Screen Objects for 1st PPD File: " & vbCrLf

'Get the first PPD


ppdFileList = appRef.PPDFileList
If IsEmpty(ppdFileList) Then
sInfo = "Empty PPDFileList"
Else
Set ppdFile = ppdFileList(0)

sInfo = ppdFile.Name & vbCrLf


If IsEmpty(screenList) Then
sInfo = sInfo & "Empty ScreenList" & vbCrLf
Else
'Get info on the all screens from the 1st PPD
For Each screenRef In ppdFile.PPDInfo.ScreenList
sInfo = sInfo & screenRef.Name & vbCrLf
sInfo = sInfo & vbTab & "Angle = "
sInfo = sInfo & CStr(screenRef.ScreenInfo.Angle) & vbCrLf
sInfo = sInfo & vbTab & "Frequency = "
sInfo = sInfo & screenRef.ScreenInfo.Frequency & vbCrLf
Next
End If
End If
textRef.Contents = textRef.Contents & sInfo
appRef.Redraw
CHAPTER 1: VBScript Object Reference ScreenSpotFunction 213

ScreenSpotFunction
Contains information about the screen spot function including its definition in PostScript language code.

ScreenSpotFunction properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The color separation screen spot function name.
SpotFunction String The spot function expressed in PostScript language
commands.

Getting screen spot information


'Creates a new document and displays ScreenSpot
'data available for first PPD file, in a text frame

'Create a new document and add a TextFrame


Set appRef = CreateObject("Illustrator.Application")

Set docRef = appRef.Documents.Add()


Set textRef = docRef.TextFrames.Add()
textRef.Top = 600
textRef.Left = 50
textRef.Contents = "ScreenSpotFunctions for 1st PPD:" & vbCrLf

'Get the first PPD


ppdFileList = appRef.PPDFileList
If IsEmpty(ppdFileList) Then
sInfo = "Empty PPDFileList"
Else
Set ppdRef = ppdFileList(0)

sInfo = ppdRef.Name & vbCrLf


If IsEmpty(screenSpotFunctionList) Then
sInfo = sInfo & "Empty ScreenSpotFunctionList" & vbCrLf
Else
'Get data on the all ScreenSpots from the 1st PPD
For Each screenSpot In ppdRef.PPDInfo.ScreenSpotFunctionList
sInfo = sInfo + screenSpot.Name & ": "
sInfo = sInfo + screenSpot.SpotFunction & vbCrLf
sInfo = sInfo & vbCrLf
Next
End If
End If
textRef.Contents = textRef.Contents + sInfo
appRef.Redraw
CHAPTER 1: VBScript Object Reference Spot 214

Spot
A custom color definition contained in a SpotColor object.

If no properties are specified when creating a new spot, default values are provided. However, if specifying
the color, you must use the same color space as the document, either CMYK or RGB. Otherwise, an error
results. When created, the spot is added to the end of the swatches list in the Swatches palette.

Spot properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Color Color info The color information for this spot color.
ColorType AiColorModel The color model for this spot color.
Name String The spot color’s name.
Parent Document Read-only. The document that contains this spot color.
SpotKind AiSpotColorKind Read-only. The kind of the spot color (RGB, CMYK, or LAB).
This is the name of the color kind contained in the spot
object.

Spot methods

Method Returns What it does


Delete Nothing Deletes the object.
()

GetInternalColor Color components Gets the internal color of a spot.


()
CHAPTER 1: VBScript Object Reference Spot 215

Creating a new spot


'Creates and adds a new spot color to the current document

Set appRef = CreateObject("Illustrator.Application")

'Create the new spot


Set frontDocument = appRef.ActiveDocument
Set newSpot = frontDocument.Spots.Add
'Define the new color value
Set newColor = CreateObject("Illustrator.CMYKColor")
newColor.Cyan = 35
newColor.Magenta = 0
newColor.Yellow = 50
newColor.Black = 0
'Define a new SpotColor with an 80% tint
'of the new Spot's color. The spot color can then
'be applied to an art item like any other color.
newSpot.Name = "Pea-Green"
newSpot.ColorType = 2 'aiSpot
newSpot.Color = newColor
Set newSpotColor = CreateObject("Illustrator.SpotColor")
newSpotColor.Spot = newSpot
CHAPTER 1: VBScript Object Reference SpotColor 216

SpotColor
Color class used to apply the color value of a spot at a specified tint value.

SpotColor properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Spot Spot A reference to the Spot object that defines the color.
Tint Double The tint of the color. Range: 0.0 to 100.0

Applying a tint to a spot

Your frontmost document must already have a PathItem before you can run this script.
'Creates a new RGB color, creates a new spot color,
'sets the color of the spot to 80% of the new RGB color,
'then applies 50% of the spot color to the frontmost path item

Set appRef = CreateObject("Illustrator.Application")


Set newColor = CreateObject("Illustrator.RGBColor")

'Define the new color value


newColor.Red = 255
newColor.Green = 0
newColor.Blue = 0

'Create the new spot


Set frontDocument = appRef.ActiveDocument
Set newSpot = frontDocument.Spots.Add

'Define the new SpotColor as 80% of the specified RGB color


newSpot.Name = "Red spot color"
newSpot.Color = newColor

'Apply 50% of the spot color just created to the frontmost path item,
'by creating a SpotColor object, setting its properties,
'then applying that to a path item's fill color.
Set newSpotColor = CreateObject("Illustrator.SpotColor")
newSpotColor.Spot = newSpot
newSpotColor.Tint = 50

Set frontPath = frontDocument.PathItems(1)


frontPath.Filled = True
frontPath.FillColor = newSpotColor
CHAPTER 1: VBScript Object Reference Spots 217

Spots
A collection of spot colors in a document.

Spots properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

Spots methods

Method Returns What it does


Add Spot Creates a new Spot object.
()

Index Spot Returns the index position of the object within the collection.
(item as Spot)

Item Spot Returns an object reference to the object identified by itemKey


(itemKey) (name or index).
RemoveAll Nothing Deletes all objects in this collection.
()

Removing spots from a document

This script illustrates how to remove all spots defined in the frontmost document.
'Deletes all spots from the current document

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.ActiveDocument
spotCount = docRef.Spots.Count
If (spotCount > 0) Then
docRef.Spots.RemoveAll
End If
CHAPTER 1: VBScript Object Reference Stories 218

Stories
A collection of Story objects. See Story for an example.

Stories properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

Stories methods

Method Returns What it does


Index Long Returns the index position of the object within the collection.
(item as Story)

Item Story Returns an object reference to the object identified by itemKey


(itemKey) (name or index).
CHAPTER 1: VBScript Object Reference Story 219

Story
A contiguous block of text as specified by a text range. A story can contain one or more text frames; if there
is more than one, the multiple text frames are linked together to form a single story.

Story properties

Property Value Type What it is


Application Application Read-only. The Illustrator Application object.
Characters Characters Read-only. All of the characters in the story.
InsertionPoints InsertionPoint Read-only. All of the insertion points in this story.
Length Long Read-only. The number of characters in the story.
Lines Lines Read-only. All of the lines in this story.
Paragraphs Paragraphs Read-only. All of the paragraphs in this story.
Parent Object Read-only. The object’s container.
TextFrames TextFrames Read-only. The text frame items in this story.
TextRange TextRange Read-only. The text range of the story.
TextRanges TextRanges Read-only. All of the text ranges in the story.
TextSelection Variant Array of TextRange Read-only. The selected text ranges in the story.
Words Words Read-only. All of the words in the story.
CHAPTER 1: VBScript Object Reference Story 220

Linking text frames into a story


'Creates a new document with 3 text frames, creates a
'story flowing through the first 2 text frames then
'creates another story fully contained in the 3rd text frame

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()

'Create the first text frame


Set itemRef1 = docRef.PathItems.Rectangle(600, 200, 50, 30)
Set textRef1 = docRef.TextFrames.AreaText(itemRef1)
textRef1.Selected = True

'create the 2nd text frame and


'link it to the first
Set itemRef2 = docRef.PathItems.Rectangle(550, 300, 50, 200)
Set textRef2 = docRef.TextFrames.AreaText(itemRef2, aiHorizontal, textRef1)
textRef1.Contents = "This is two text frames linked together as one story"
textRef2.Selected = True
appRef.Redraw

'Create a 3rd text frame and count the stories


Set textRef3 = docRef.TextFrames.Add
textRef3.Contents = "Each unlinked textFrame adds a story."
textRef3.Top = 650
textRef3.Left = 200
appRef.Redraw
CHAPTER 1: VBScript Object Reference Swatch 221

Swatch
A color swatch definition contained in a document. The swatches correspond to the swatch palette in the
Illustrator user interface. Additional swatches can be created either manually by a user or by a script. The
swatch can hold all types of color data (that is, pattern, gradient, CMYK, RGB, gray, and spot).

Swatch properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Color Color info The color information for this swatch.
Name String The swatch’s name.
Parent Document Read-only. The document that contains this swatch.

Swatch methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Changing the name of a swatch

This script illustrates how to change the name of the fifth swatch.
'Changes the name of a swatch

Set appRef = CreateObject("Illustrator.Application")

Set swatch5 = appRef.ActiveDocument.Swatches(5)


swatch5.Name = "myColor"
CHAPTER 1: VBScript Object Reference Swatches 222

Swatches
A collection of swatch objects in a document.

Swatches properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

Swatches methods

Method Returns What it does


Add Swatch Creates a new Swatch object.
()

GetSelected List of Swatch Gets selected swatches in the document.


()

Index Long Returns the index position of the object within the
(item as Swatch) collection.
Item Swatch Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()

Deleting a swatch

This script illustrates how to first obtain a swatch by index and then how to delete that swatch.
'Deletes a swatch from the current document

Set appRef = CreateObject("Illustrator.Application")

Set documentSwatches = appRef.ActiveDocument.Swatches


Set swatchToDelete = documentSwatches(5)
swatchToDelete.delete
CHAPTER 1: VBScript Object Reference SwatchGroup 223

SwatchGroup
A group of swatches.

SwatchGroup properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The name of the swatch group.
Parent Document Read-only. The document that contains this symbol.

SwatchGroup methods

Method Returns What it does


AddSpot Nothing Adds a spot swatch to the swatch group.
(spot as Spot)

AddSwatch Nothing Adds a swatch to the swatch group.


(swatch as Swatch)

Delete Nothing Deletes a swatch group.


()

GetAllSwatches List of Swatch Gets a list of all swatches in the swatch group.
()
CHAPTER 1: VBScript Object Reference SwatchGroups 224

SwatchGroups
A collection of swatch group objects.

SwatchGroups properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. The number of objects in the collection.
Parent Document Read-only. The document that contains this object.

SwatchGroups methods

Method Returns What it does


Add SwatchGroup Creates a new swatch group.
()

Index Long Returns the index position of the object within the
(item as SwatchGroup) collection.
Item SwatchGroup Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference Symbol 225

Symbol
An art item that is stored in the Symbols palette, and can be reused one or more times in the document
without duplicating the art data. Symbols are contained in documents. Instances of Symbol in a document
are associated with SymbolItem objects, which store the art object properties.

Symbol properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The symbol’s name.
Parent Document Read-only. The document that contains this symbol.

Symbol methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Duplicate Object Creates a duplicate of the object.


()
CHAPTER 1: VBScript Object Reference SymbolItem 226

SymbolItem
An art item made reuseable by adding it to the Symbols palette. A SymbolItem is linked to the Symbol
from which it was created and changes if you modify the associated Symbol object.

SymbolItem properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so, what
kind.
BlendingMode AiBlendModes The mode used when compositing an object.
ControlBounds Variant Array of Read-only. The bounds of the object including stroke
4 Doubles width and controls.
Editable Boolean Read-only. If true, this item is editable.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding stroke
4 Doubles width.
Height Double The height of the item, based on GeometricBounds.
Hidden Boolean If true, this item is hidden.
IsIsolated Boolean If true, this object is isolated.
Layer Layer Read-only. The layer this item belongs to.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Locked Boolean If true, this item is locked
Name String The name of this item.
Note String The note assigned to this item.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Parent Object Read-only. The object that contains this item.
Position Variant Array of The position (in points) of the top left corner of the
2 Doubles item in the format [x, y]. Does not include stroke
weight.
Selected Boolean If true, this item is selected.
Sliced Boolean If true, this item is sliced.
Symbol Symbol The symbol object to which this item is linked. You can
set this property to link it to a different symbol object.
Tags Tags Read-only. The tags contained in this item.
CHAPTER 1: VBScript Object Reference SymbolItem 227

Property Value type What it is


Top Double The position of the top of the item (in points,
measured from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this item.
VisibilityVariable Variable The Variable bound to this item.
VisibleBounds Variant Array of Read-only. The visible bounds of the item including
4 Doubles stroke width.
Width Double The width of the item, based on GeometricBounds.
WrapInside Boolean If true, the text frame object are wrapped inside this
object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, the text frame objects are wrapped around
this object (text frame must be above the object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

SymbolItem methods

Method Returns What it does


Copy Nothing Copies the item to the clipboard; the
() associated document must be the
frontmost document.
Cut Nothing Cuts the item to the clipboard; the
() associated document must be the
frontmost document.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object], with the location and position for the
[insertionLocation as copy.
AiElementPlacement])

Move Nothing Moves the art item to a new location


(relativeObject as Object, and position.
insertionLocation as
AiElementPlacement)
CHAPTER 1: VBScript Object Reference SymbolItem 228

Method Returns What it does


Resize Nothing Scales the art item where scaleX is
(scaleX as Double, the horizontal scaling factor and
scaleY as Double, scaleY is the vertical scaling factor;
[, changePositions as Boolean]
100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to the


(angle as Double, current rotation. The object is rotated
[, changePositions as Boolean] counter-clockwise if the Angle value
[, changeFillPatterns as Boolean]
is positive, clockwise if the value is
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the art item by applying a


(transformationMatrix as Matrix, transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative to the


([deltaX as Double] current position, where deltaX is the
[, deltaY as Double] horizontal offset and deltaY is the
[, transformObjects as Boolean]
vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in the


(zOrderCmd as AiZOrderMethod) stacking order of the group or layer
(Parent) of this object.
CHAPTER 1: VBScript Object Reference SymbolItem 229

Getting symbol items for symbols


'Creates a document and adds every symbol item to it

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()

y = docRef.Height - 30
x = 50
i = 1

Do While (i < (docRef.Symbols.Count + 1))


Set symbolRef = docRef.Symbols(i)
Set itemRef = docRef.SymbolItems.Add(symbolRef)
itemRef.Top = y
itemRef.Left = x
y = y - (itemRef.Height + 20)
If (y < 60) Then
y = docRef.Height - 30
x = x + 200
End If
i = i + 1
Loop
CHAPTER 1: VBScript Object Reference SymbolItems 230

SymbolItems
A collection of SymbolItem objects in a document. See SymbolItem for example.

SymbolItems properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

SymbolItems methods

Method Returns What it does


Add SymbolItem Creates a new SymbolItem object in the document linked
(symbol as Symbol) to the given symbol.
Index Long Returns the index position of the object within the
(item as SymbolItem) collection.
Item SymbolItem Returns an object reference to the object identified by
(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference Symbols 231

Symbols
A collection of symbol objects in a document.

Symbols properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

Symbols methods

Method Returns What it does


Add Symbol Creates a new Symbol
(SourceArt as Object, object in the document
[RegistrationPoint as AiSymbolRegistrationPoint]) based on the art item.

The default registration


point is
aiSymbolCenterPoint.

Index Long Returns the index


(item as Symbol) position of the object
within the collection.
Item Symbol Returns an object
(itemKey) reference to the object
identified by itemKey
(name or index).
RemoveAll Nothing Deletes all objects in this
() collection.
CHAPTER 1: VBScript Object Reference Symbols 232

Creating symbols
'Creates a path item to display each graphic style,
'then adds each item as a new symbol

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()
y = docRef.Height - 30

iCount = docRef.GraphicStyles.Count

i = 1
Do While (i < (iCount + 1))
'create a PathItem and apply the style to it
Set styleRef = docRef.GraphicStyles(i)
Set itemRef = docRef.PathItems.Rectangle(y, 100, 20, 20)
styleRef.ApplyTo itemRef

'create a new symbol from the graphic style


docRef.Symbols.Add itemRef

y = (y - (itemRef.Height + 40)) ' reduce y for next item


i = i + 1
Loop

appRef.Redraw
CHAPTER 1: VBScript Object Reference SymmetryRepeatConfig 233

SymmetryRepeatConfig
Specifies symmetry repeat art configuration options.

SymmetryRepeat properties

Property Value type What it is


Applicatio Application Read-only. The Illustrator Application object.
n

AxisRotati Double Symmetry axis rotation angle wrt x-axis in


onAngleInR
anti-clockwise fashion
adians
Default value:1.57
CHAPTER 1: VBScript Object Reference SymmetryRepeatItem 234

SymmetryRepeatItem
Specifies symmetry repeat item options.

SymmetryRepeatItem properties

Property Value type What it is


parent object Read-only. The object’s container.
SymmetryConfig SymmetryRepeatCon Read-only. Symmetry repeat configuration for repeat
fig
art.
URL String The value of the Adobe URL tag assigned to this
path item.
Width Double The width of the symmetry repeat item, based on the
GeometricBounds.

SymmetryRepeatItem methods

Method Returns What it does

duplicate SymmetryRepeatIte Creates a duplicate of the selected object.


([relativeObject as m
object]
[,insertionLocation
as
Object])

move SymmetryRepeatIte Moves the object.


(relativeObject as m
Object,
insertionLocation as
AiElementPlacement)

setSymmetryConfigura Nothing Updates the symmetry repeat art.


tion
(config as
SymmetryRepeatConfig
,
state as
AiSymmetryRepeatUpda
te)
CHAPTER 1: VBScript Object Reference SymmetryRepeatItems 235

SymmetryRepeatItems
Specifies a collection of symmetry repeat items.

SymmetryRepeatItems properties

Property Value type What it is

Application Application Read-only. The Illustrator Application object.

parent object Read-only. The object’s container.

count long Read-only. The number of elements in the


collection.

SymmetryRepeatItems methods

Method Returns What it does

Add(SourceArt as SymmetryRepeatIte Creates a symmetry repeat art


Object, m
[Config as
SymmetryRepeatConfig
])

RemoveAll Nothing Deletes all elements.


()
CHAPTER 1: VBScript Object Reference AiSymmetryRepeatUpdate 236

AiSymmetryRepeatUpdate
Represents which property of symmetry repeat gets updated.

SymmetryRepeatUpdate properties

Property Value type What it is

AiAxisRotation constant Updates axis rotation angle with respect to x-axis.

AiSymmetryAll constant Updates all the properties of symmetry repeat


artwork.
CHAPTER 1: VBScript Object Reference TabStopInfo 237

TabStopInfo
Information about the alignment, position, and other details for a tab stop in a ParagraphAttributes
object.

TabStopInfo properties

Property Value type What it is


Alignment AiTabStopAlignment The alignment of the tab stop. Default: 0 aiLeftTab
Application Application Read-only. The Illustrator Application object.
DecimalCharacter String The character used for decimal tab stops. Default: .
Leader String The leader dot.
Position Double The position of the tab stop expressed in points.
Default: 0.0

Getting tab stop information


'Iterates through each text frame and display
'data found about each tab stop, if any

'verify a document is open


Set appRef = CreateObject("Illustrator.Application")
Set docRef = appRef.ActiveDocument
For Each textRef In docRef.TextFrames
' check each TextFrame for paragraphs
For Each paraRef In textRef.Paragraphs
' check each paragraph for TabStops
For Each tabRef In paraRef.ParagraphAttributes.TabStops
sData = "TabStop Leader = " & tabRef.Leader & Chr(9)
sData = sData & "TabStop Position = " & CStr(tabRef.Position) & Chr(10)
Next
Next
Next

Set newTF = docRef.TextFrames.Add


newTF.Contents = sData
newTF.Top = 400
newTF.Left = 100
CHAPTER 1: VBScript Object Reference Tag 238

Tag
A tag associated with a specific art item. Tags allow you to assign an unlimited number of key-value pairs
to any item in a document.

Tag properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Name String The Tag’s name.
Parent Object Read-only. The object that contains this Tag.
Value String The data stored in this Tag.

Tag methods

Method Returns What it does


Delete Nothing Deletes the object.
()

Using tags
'Displays tag information of selected item in a text frame
'in a new document

Set appRef = CreateObject("Illustrator.Application")


newTagName = "OneWord"
selection = appRef.selection
If (Not IsEmpty(selection)) Then
'Get the first selected item
Set selectedArt = selection(0)
Set tagList = selectedArt.Tags
If tagList.Count = 0 Then
Set tempTag = tagList.add
tempTag.Name = newTagName
tempTag.Value = "anything you want"
End If

'Create a document and add a line of text per tag


Set reportDocument = appRef.Documents.Add
top_offset = 400
For Each tagItem In tagList
Set tagText = reportDocument.TextFrames.Add
tagText.Contents = "Tag " & Chr(13) & Chr (9) & tagItem.Name & Chr(13) & Chr(9) &
tagItem.Value & Chr(10)
tagText.Position = Array(100, top_offset)
top_offset = top_offset - 20
Next
End If
CHAPTER 1: VBScript Object Reference Tags 239

Tags
A collection of Tag objects.

Tags properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

Tags methods

Method Returns What it does


Add Tag Creates a new Tag object.
()

Index Long Returns the index position of the object within the collection.
(item as Tag)

Item Tag Returns an object reference to the object identified by itemKey (name
(itemKey) or index).
RemoveAll Nothing Deletes all objects in this collection.
()

Creating tags to mark images

This example illustrates how to mark all images in a document with a specific tag. If your script creates
temporary PageItems, you can then later look at the MyInfo tag. If it exist for a particular PageItem and its
value is OriginalItem, you know not to delete it.
'Creates name and value tags for each placed or raster
'item in the current document

Set appRef = CreateObject("Illustrator.Application")

Set frontDocument = appRef.ActiveDocument


For Each imageArt In frontDocument.PageItems
If ((imageArt.PageItemType = 6) Or _
(imageArt.PageItemType = 8)) Then

'Create a new Tag with the name myInfo and the value originalItem
Set tagRef = imageArt.Tags.Add
tagRef.Name = "MyInfo"
tagRef.Value = "OriginalItem"
End If
Next
CHAPTER 1: VBScript Object Reference TextFont 240

TextFont
Information about a font in the document, found in a CharacterAttributes object.

TextFont properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Family String Read-only. The font’s family name.
Name String Read-only. The font’s full name.
Parent Object Read-only. The object’s container.
Style String Read-only. The font’s style name.

Showing fonts in a document


'Creates a new A3 sized document and lists available
'fonts until the document is full.

Set appRef = CreateObject("Illustrator.Application")


myWidth = 1191.0
myHeight = 842.0
Set docRef = appRef.Documents.Add(, myWidth, myHeight)
edgeSpacing = 10
columnSpacing = 230

x = edgeSpacing
y = docRef.Height - edgeSpacing

iCounter = 0
For Each fontRef In appRef.TextFonts
'create the text frame
Set textRef = docRef.TextFrames.Add()
textRef.TextRange.CharacterAttributes.Size = 10
textRef.Contents = fontRef.Name + " " + fontRef.Style
textRef.Top = y
textRef.Left = x

' Check whether the new text frame has gone over the document bounds
if((x + textRef.Width) > docRef.Width) Then
' delete the text frame
textRef.Delete()
Exit For
Else
' keep the text frame
appRef.Redraw
textRef.TextRange.CharacterAttributes.TextFont =
appRef.TextFonts.Item(fontRef.Name)
y = y - textRef.Height
If (y < 20) Then
' reset y,x at bottom of page
y = docRef.Height - edgeSpacing
CHAPTER 1: VBScript Object Reference TextFont 241

x = x + columnSpacing
End If
End If
iCounter = iCounter + 1
Next
CHAPTER 1: VBScript Object Reference TextFonts 242

TextFonts
A collection of TextFont objects.

TextFonts properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

TextFonts methods

Method Returns What it does


Index Long Returns the index position of the object within the collection.
(item as TextFont)

Item TextFont Returns an object reference to the object identified by itemKey


(itemKey) (name or index).

Finding a font
'Searches through the list of available fonts for the "Symbol" font

Set appRef = CreateObject("Illustrator.Application")

fontName = "Symbol"
foundTextFace = False
For Each fontToTest In appRef.TextFonts
If (fontToTest.Name = fontName) Then
foundTextFace = True
End If
Next

If (foundTextFace) Then
'fontName & " is installed on this machine"
Else
'fontName & " is not installed on this machine"
End If
CHAPTER 1: VBScript Object Reference TextFrame 243

TextFrame
The basic art item for displaying text. From the user interface, this is text created with the Text tool. There
are three types of text art in Illustrator: point text, path text, and area text. The type is indicated by the text
frame’s Kind property.

When you create a text frame, you also create a Story object. However, threading text frames combines the
frames into a single story object. To thread frames, use the NextFrame or PreviousFrame property.

TextFrame properties

Property Value type What it is


Anchor Variant Array of The position of the anchor point along the path
2 Doubles text.
Antialias AiTextAntialias The type of anti-aliasing to use in the text.
Application Application Read-only. The Illustrator Application object.
ArtworkKnockout AiKnockoutState Is this object used to create a knockout, and if so,
what kind.
BlendingMode AiBlendModes The mode used when compositing an object.
Characters Characters Read-only. All the characters in this text frame.
ColumnCount Long The column count in the text frame (area text
only).
ColumnGutter Double The column gutter in the text frame (area text
only).
Contents String The text contents of this text frame.
ContentVariable Variable The content variable bound to this text frame.
ControlBounds Variant Array of Read-only. The bounds of the object including
4 Doubles stroke width and controls.
Editable Boolean Read-only. If true, this item is editable.
EndTValue Double The end position of text along a path, as a value
relative to the path’s segments (path text only).
FlowsLinkHorizontally Boolean If true, text is first flowed horizontally between
linked frames.
GeometricBounds Variant Array of Read-only. The bounds of the object excluding
4 Doubles stroke width.
Height Double The height of the item, based on
GeometricBounds.

Hidden Boolean If true, this item is hidden.


CHAPTER 1: VBScript Object Reference TextFrame 244

Property Value type What it is


InsertionPoints InsertionPoints Read-only. All the insertion points in this text
frame.
IsIsolated Boolean If true, this object is isolated.
Kind AiTextType Read-only. The type of text frame item.
Layer Layer Read-only. The layer this item belongs to.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Lines Lines Read-only. All the lines in this text frame.
Locked Boolean If true, this item is locked.
Matrix Matrix Read-only. The transformation matrix for this text
frame.
Name String The name of this item.
Note String The note assigned to this item.
NextFrame TextFrame The linked frame following this one.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
OpticalAlignment Boolean If true, the optical alignment is active.
Orientation AiTextOrientation The orientation of the text in the frame.
Paragraphs Paragraphs Read-only. All the paragraphs in this text frame.
Parent Object Read-only. The object that contains this item.
Position Variant Array of The position (in points) of the top left corner of
2 Doubles the item in the format [x, y]. Does not include
stroke weight.
PreviousFrame TextFrame The linked text frame preceding this one.
RowCount Long The row count in the text frame (area text only).
RowGutter Double The row gutter in the text frame (area text only).
Selected Boolean If true, this item is selected.
Sliced Boolean If true, this item is sliced.
Spacing Double The amount of spacing between characters that
flow around a sharp curve or acute angle in the
path. Note: Valid only when Kind is path.
StartTValue Double The start position of text along a path, as a value
relative to the path’s segments. Note: Valid only
when Kind is path.
Story Story Read-only. The story to which the text frame
belongs.
CHAPTER 1: VBScript Object Reference TextFrame 245

Property Value type What it is


Tags Tags Read-only. The tags contained in this item.
TextPath TextPath Read-only. The path item associated with the
text frame. Note: Valid only when Kind is area or
path.
TextRange TextRange Read-only. The text range of the text frame.
TextRanges TextRanges Read-only. All the text in this text frame.
TextSelection Variant Array of Read-only. The selected text (ranges) in the
TextRange TextFrame.

Top Double The position of the top of the item (in points,
measured from the bottom of the page).
URL String The value of the Adobe URL tag assigned to this
item.
VisibilityVariable Variable The Variable bound to this item.
VisibleBounds Variant Array of Read-only. The visible bounds of the item
4 Doubles including stroke width.
Width Double The width of the item, based on
GeometricBounds.

Words Words Read-only. All the words in this text frame.


WrapInside Boolean If true, the text frame object are wrapped inside
this object.
WrapOffset Double The offset to use when wrapping text around this
object.
Wrapped Boolean If true, the text frame objects are wrapped
around this object (text frame must be above the
object).
ZOrderPosition Long Read-only. The position of this art item within the
stacking order of the group or layer (Parent) that
contains the art item.

TextFrame methods

Method Returns What it does


ConvertAreaObjectToPointObject TextFrame Converts the area-type text frame
() to a point-type text frame.
ConvertPointObjectToAreaObject TextFrame Converts the point-type text
() frame to an area-type text frame.
Copy Nothing Copies the current selection to
() the clipboard.
CHAPTER 1: VBScript Object Reference TextFrame 246

Cut Nothing Cuts the current selection to the


() clipboard.
CreateOutline GridRepea Converts the frame’s text to
() tConfig outlines.
Delete Nothing Deletes the object.
()

Duplicate Object Duplicates the art item, optionally


([relativeObject as Object] specifying the location and
[, insertionLocation as position for the copy.
AiElementPlacement])

Move Nothing Moves the art item, specifying the


(relativeObject as Object, new location and position.
insertionLocation as AiElementPlacement)

Remove Nothing Deletes this object.


()

Resize Nothing Scales the art item where scaleX


(scaleX as Double, is the horizontal scaling factor
scaleY as Double, and scaleY is the vertical scaling
[, changePositions as Boolean]
factor; 100.0 = 100%
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, scaleAbout as AiTransformation])

Rotate Nothing Rotates the art item relative to the


(angle as Double, current rotation. The object is
[, changePositions as Boolean] rotated counter-clockwise if the
[, changeFillPatterns as Boolean]
Angle value is positive, clockwise
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean] if the value is negative.
[, rotateAbout as AiTransformation])

Transform Nothing Transforms the art item by


(transformationMatrix as Matrix, applying a transformation matrix.
[, changePositions as Boolean]
[, changeFillPatterns as Boolean]
[, changeFillGradients as Boolean]
[, changeStrokePattern as Boolean]
[, changeLineWidths as Double]
[, transformAbout as AiTransformation])

Translate Nothing Repositions the art item relative


([deltaX as Double] to the current position, where
[, deltaY as Double] deltaX is the horizontal offset
[, transformObjects as Boolean]
and deltaY is the vertical offset.
[, transformFillPatterns as Boolean]
[, transformFillGradients as Boolean]
[, transformStrokePatterns as Boolean])

ZOrder Nothing Arranges the art item’s position in


(zOrderCmd as AiZOrderMethod) the stacking order of the group or
layer (Parent) of this object.
CHAPTER 1: VBScript Object Reference TextFrame 247

Using text frames


'Duplicates and rotates the selected text art item 5 times

Set appRef = CreateObject("Illustrator.Application")

'First check the selection of the application


'It has to be a text art item in order for this script to run
selection = appRef.selection
Set frontDocument = appRef.ActiveDocument
Set sourceTextArt = selection(0)

'Get the parent of the text art so new text art items can be inserted
'in the same group or layer as the selected text art is in
Set textArtGroup = sourceTextArt.Parent.TextFrames

'Create 5 new versions of the text art each rotated a bit


For i = 1 To 5
Set newTextArt = textArtGroup.Add
newTextArt.Position = sourceTextArt.Position
newTextArt.Contents = sourceTextArt.Contents
newTextArt.Rotate 180 * i / 6
Next
CHAPTER 1: VBScript Object Reference TextFrames 248

TextFrames
A collection of TextFrame objects.

TextFrames properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

TextFrames methods

Method Returns What it does


Add TextFrame Creates a new point TextFrame object.
()

AreaText TextFrame Creates a new area TextFrame object.


(textPath as PathItem
[, orientation as AiTextOrientation]
[, baseFrame as TextFrame]
[, postFix as Boolean]) )

Index Long Returns the index position of the


(item as TextFrame) object within the collection.
Item TextFrame Returns an object reference to the
(itemKey) object identified by itemKey (name or
index).
PathText TextFrame Creates an on-path text frame item.
(textPath as PathItem
[, startTValue as Double]
[, endTValue as Double]
[, orientation as AiTextOrientation]
[, baseFrame as TextFrame]
[, postFix as Boolean])

PointText TextFrame Creates a point text frame item.


(anchor as Array of 2 Doubles
[, orientation as AiTextOrientation])

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference TextFrames 249

Adding three types of text frames


'Creates a document with 3 TextFrames (area, path, point),
'changes the contents of each TextFrame then deletes a text frame

Set appRef = CreateObject("Illustrator.Application")


Set docRef = appRef.Documents.Add()

'create 3 new textFrames (are, line, point)


'Area Text
Set rectRef = docRef.PathItems.Rectangle(700, 50, 100, 100)
Set areaTextRef = docRef.TextFrames.AreaText(rectRef)
areaTextRef.Contents = "TextFrame #1"
areaTextRef.Selected = True

'Line Text
Set lineRef = docRef.PathItems.Add()
lineRef.SetEntirePath (Array(Array(200, 700), Array(300, 550)))
Set pathTextRef = docRef.TextFrames.PathText(lineRef)
pathTextRef.Contents = "TextFrame #2"
pathTextRef.Selected = True

'Point Text
Set pointTextRef = docRef.TextFrames.Add()
pointTextRef.Contents = "TextFrame #3"
pointTextRef.Top = 700
pointTextRef.Left = 400
pointTextRef.Selected = True
appRef.Redraw

sText = "There are " & CStr(docRef.TextFrames.Count) & " TextFrames."


sText = sText & vbCrLf & "Changing contents of each TextFrame."

'change the content of each


areaTextRef.Contents = "Area TextFrame."
pathTextRef.Contents = "Path TextFrame."
pointTextRef.Contents = "Point TextFrame."
appRef.Redraw

docRef.TextFrames(2).Delete
appRef.Redraw
CHAPTER 1: VBScript Object Reference TextPath 250

TextPath
A path or list of paths for area or path text. A path consists of path points that define its geometry.

TextPath properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Area Double Read-only. The area of this path in square points. If the
area is negative, the path is wound counterclockwise.
Self-intersecting paths can contain sub-areas that
cancel each other out, which makes this value zero
even though the path has apparent area.
BlendingMode AiBlendModes The blend mode used when compositing an object.
Clipping Boolean If true, this path are used as a clipping path.
Closed Boolean If true, this path is closed.
Editable Boolean Read-only. If true, this item is editable.
Evenodd Boolean If true, the even-odd rule are used to determine
insideness.
FillColor Color info The fill color of the path.
Filled Boolean If true, the path be filled.
FillOverprint Boolean If true, the art beneath a filled object are overprinted.
Guides Boolean If true, this path is a guide object.
Height Double The height of the group item.
Left Double The position of the left side of the item (in points,
measured from the left side of the page).
Note String The note text assigned to the path.
Opacity Double The opacity of the object. Range: 0.0 to 100.0
Parent Layer or Read-only. The parent of this object.
GridRepeatConfig

PathPoints PathPoints Read-only. The path points contained in this path item.
Polarity AiPolarityValues The polarity of the path.
Position Array of 2 Doubles The position (in points) of the top left corner of the
item in the format [x, y]. Does not include stroke
weight.
Resolution Double The resolution of the path in dots per inch (dpi).
SelectedPathPoints PathPoints Read-only. All of the selected path points in the path.
CHAPTER 1: VBScript Object Reference TextPath 251

Property Value type What it is


StrokeCap AiStrokeCap The type of line capping.
StrokeColor Color info The stroke color for the path.
Stroked Boolean If true, the path are stroked.
StrokeDashes Object The lengths for dashes and gaps in dashed lines,
starting with the first dash length, followed by the first
gap length, and so on. Set to an empty list, [], for a
solid line.
StrokeDashOffset Double The default distance into the dash pattern at which the
pattern are started.
StrokeJoin AiStrokeJoin Type of joints for the path.
StrokeMiterLimit Double When a default stroke join is set to mitered, this
property specifies when the join will be converted to
beveled (squared-off ) by default. The default miter
limit of 4 means that when the length ofþthe point
reaches four times the stroke weight, the join switches
from a miter join to a bevel join. A value of 1 specifies a
bevel join. Range: 1 to 500 Default: 4
StrokeOverprint Boolean If true, the art beneath a stroked object are
overprinted.
StrokeWidth Double Width of the stroke.
Top Double The position of the top of the item (in points, measured
from the bottom of the page).
Width Double The width of the item.

TextPath methods

Method Returns What it does


SetEntirePath Nothing Sets the path using the array of points specified as [x, y]
(pathPoints as Array of coordinate pairs.
[x, y] coordinate pairs)
CHAPTER 1: VBScript Object Reference TextRange 252

TextRange
A range of characters from a text item (story, text frame, character, word, line, paragraph, or another text
range).

TextRange properties

Property Value type What it is


Application Application Read-only. The Illustrator Application
object.
CharacterAttributes CharacterAttributes Read-only. The character properties for the
text range.
CharacterOffset Long Offset of the first character.
Characters Characters Read-only. All of the characters in the text
range.
CharacterStyles CharacterStyles Read-only. List of referenced character styles
in the text range.
Contents String The text string.
InsertionPoints InsertionPoint Read-only. All of the insertion points in this
text range.
Kerning Long The spacing between two characters, in
thousandths of an em.
Length Long The length (in characters). Minimum: 0
Lines Lines Read-only. All the lines in this text range.
ParagraphAttributes ParagraphAttributes Read-only. The paragraph properties.
Paragraphs Paragraphs Read-only. All of the paragraphs in this text
range.
ParagraphStyles ParagraphStyles Read-only. A list of referenced paragraph
styles in the text range.
Parent Object Read-only. The object’s container.
Story Story Read-only. The story of the text range.
TextRanges TextRanges Read-only. All of the text in this text range.
TextSelection Array of TextRange Read-only. The selected text (ranges) in the
text range.
Words Words Read-only. All of the words in this text range.
CHAPTER 1: VBScript Object Reference TextRange 253

TextRange methods

Method Returns What it does


ChangeCaseTo Nothing Changes the capitalization of
(type as AiCaseChangeType) text.
Delete Nothing Deletes the object.
()

DeSelect Nothing Deselects the text range.


()

Duplicate TextRange Duplicates the art item,


([relativeObject as Object], optionally specifying the
[insertionLocation as AiElementPlacement]) location and position for the
copy.
Move Nothing Moves the art item to the new
(relativeObject as Object, location and position.
insertionLocation as AiElementPlacement)

Select Nothing Selects the text range. If


([addToDocument as Boolean]) addToDocument is true, adds
this to the current selection;
otherwise replaces the current
selection.
CHAPTER 1: VBScript Object Reference TextRange 254

Using a text range


'Increases the font size of the first 2 characters of each
'word in the current document

Set appRef = CreateObject("Illustrator.Application")

For Each textArt In appRef.ActiveDocument.TextFrames


Set textArtRange = textArt.TextRange

For Each textWord In textArtRange.Words


'If word is longer than 2 characters
'resize just the first 2 characters
'otherwise, resize the whole word
wordLen = Len(textWord.Contents)
If (wordLen < 2) Then
charsToChange = wordLen
Else
charsToChange = 2
End If
'resize the word
If (charsToChange > 0) Then
'Omit 1st arg to go from the beginning to
'character number charsToChange-1 (First character is index 0)
Dim i
For i = 1 To charsToChange
Set firstChars = textWord.Characters(i)
firstChars.CharacterAttributes.Size =_
firstChars.CharacterAttributes.Size * 1.5
Next
End If
Next
Next
CHAPTER 1: VBScript Object Reference TextRanges 255

TextRanges
A collection of TextRange objects.

TextRanges properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

TextRanges methods

Method Returns What it does


Index Long Returns the index position of the object within the collection.
(item as TextRange)

Item TextRange Returns an object reference to the object identified by


(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference TracingObject 256

TracingObject
A tracing object, which associates a source raster art item with a vector art plug-in group created by
tracing. Scripts can initiate tracing using PlacedItem.Trace or RasterItem.Trace. The resulting
PluginItem object represents the vector art group, and has this object in its Tracing property.

A script can force the tracing operation by calling the application’s Redraw method. The operation is
asynchronous, so a script should call Redraw after creating the tracing object, but before accessing its
properties or expanding the tracing to convert it to an art item group.

The read-only properties that describe the tracing result have valid values only after the first tracing
operation completes. A value of 0 indicates that the operation has not yet been completed.

TracingObject properties

Property Value type What it is


AnchorCount Long Read-only. The number of anchors in the tracing result.
Application Application Read-only. The Illustrator Application object.
AreaCount Long Read-only. The number of areas in the tracing result.
ImageResolution Real Read-only. The resolution of the source image in pixels per
inch.
Parent Object Read-only. The object’s container.
PathCount Long Read-only. The number of paths in the tracing result.
SourceArt PlacedItem or Read-only. The raster art used to create the associated
RasterItem vector-art plug-in group.
TracingOptions TracingOptions The options used to convert the raster artwork to vector art.
UsedColorCount Long Read-only. The number of colors used in the tracing result.
CHAPTER 1: VBScript Object Reference TracingObject 257

TracingObject methods

Method Returns What it does


ExpandTracing GridRepeatCo Converts the vector art into a new group item. The new
([viewed As Boolean]) nfig GroupItem object replaces the PluginItem object in
the document. By default, viewed is false, and the
new group contains only the tracing result (the filled or
stroked paths). If viewed is true, the new group retains
additional information that was specified for the
viewing mode, such as outlines and overlays.

Deletes this object and its associated PluginItem


object. Any group-level attributes that were applied to
the plug-in item are applied to the top level of the new
group item.
ReleaseTracing PlacedItem or Reverts the artwork in the document to the original
() RasterItem source raster art and removes the traced vector art.
Returns the original object used to create the tracing,
and deletes this object and its associated PluginItem
object.
CHAPTER 1: VBScript Object Reference TracingOptions 258

TracingOptions
A set of options used in converting raster art to vector art by tracing.

TracingOptions properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
CornerAngle Double The sharpness, in degrees of a turn in the original
image that is considered a corner in the tracing
result path. Range: 0 to 180
Fills Boolean If true, trace with fills. At least one of Fills or
Strokes must be true.

IgnoreWhite Boolean If true, ignores white fill color.


LivePaintOutput boolean If true, result is LivePaint art. If false, it is classic art.

NOTE: A script should set this value only in


preparation for a subsequent expand operation.
Leaving a tracing on the artboard when this property
is true can lead to unexpected application behavior.
MaxColors Long The maximum number of colors allowed for
automatic palette generation. Used only if
TracingMode is color or grayscale. Range: 2 to 256

MaxStrokeWeight Double The maximum stroke weight in points, when


Strokes is true. Range: 0.01 to 100.0

MinArea Long The smallest feature, in square pixels, that is traced.


For example, if it is 4, a feature of 2 pixels wide by 2
pixels high is traced.
MinStrokeLength Double The minimum length in pixels of features in the
original image that can be stroked, when Strokes is
true. Smaller features are omitted. Range: 0.0 to
200.0 Default: 20.0
OutputToSwatches Boolean If true, named colors (swatches) are generated for
each new color created by the tracing result. Used
only if TracingMode is 0 (aiTracingModeColor) or 1
(aiTracingModeGray).
Palette String The name of a color palette to use for tracing. If the
empty string, use the automatic palette. Used only if
TracingMode is 0 (aiTracingModeColor) or 1
(aiTracingModeGray).
Parent Object Read-only. The object’s container.
CHAPTER 1: VBScript Object Reference TracingOptions 259

Property Value type What it is


PathFitting Double The distance between the traced shape and the
original pixel shape. Lower values create a tighter
path fitting. Higher values create a looser path
fitting. Range: 0.0 to 10.0
PreprocessBlur Double The amount of blur used during preprocessing, in
pixels. Blurring helps reduce small artifacts and
smooth jagged edges in the tracing result.
Range: 0.0 to 2.0
Preset String Read-only. The name of a preset file containing these
options.
Resample Boolean If true, resample when tracing. (This setting is not
captured in a preset file.)

Always true when the raster source art is placed or


linked.
ResampleResolution Double The resolution to use when resampling in pixels per
inch (ppi). Lower resolution increases the speed of
the tracing operation. (This setting is not captured in
a preset file.)
Strokes Boolean If true, trace with strokes. At least one of Fills or
Strokes must be true. Used only if TracingMode is
2 aiTracingModeBlackAndWhite.

Threshold Long The threshold value of black-and-white tracing. All


pixels with a grayscale value greater than this are
converted to black. Used only if TracingMode is
2 aiTracingModeBlackAndWhite.
Range: 0 to 255
TracingMode AiTracingModeType The color mode for tracing.
ViewRaster AiViewRasterType The view for previews of the raster image. (This
setting is not captured in a preset file.)
ViewVector AiViewVectorType The view for previews of the vector result. (This
setting is not captured in a preset file.)
CHAPTER 1: VBScript Object Reference TracingOptions 260

TracingOptions methods

Method Returns What it does


LoadFromPreset Boolean Loads a set of options from the specified preset, as found in
(presetName as String) the Application.TracingPresetList array.
StoreToPreset Boolean Saves this set of options in the specified preset. Use a name
(presetName as String) found in the Application.TracingPresetList array, or a
new name to create a new preset. For an existing preset,
overwrites an unlocked preset and returns true. Returns
false if the preset is locked.
CHAPTER 1: VBScript Object Reference Variable 261

Variable
A dynamic object used to create data-driven graphics. For an example, see DataSets. Variables are
accessed in Illustrator through the Variables palette. A variable is document-level object that can be
imported or exported.

Variable properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Kind AiVariableKind The variable’s type.
Name String The name of the variable.
PageItems PageItems Read-only.The artwork contained in the variable.
Parent Document Read-only. The document that contains this object.

Variable methods

Method Returns What it does


Delete Nothing Deletes the object.
()
CHAPTER 1: VBScript Object Reference Variables 262

Variables
A collection of Variable objects in a document.

Variables properties
V

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

Variables methods

Method Returns What it does


Add Variable Creates a new Variable object.
()

Index Long Returns the index position of the object within the collection.
(item as Variable)

Item Variable Returns an object reference to the object identified by


(itemKey) itemKey (name or index).

RemoveAll Nothing Deletes all objects in this collection.


()
CHAPTER 1: VBScript Object Reference View 263

View
A document view in an Illustrator document, which represents a window view onto a document. Scripts
cannot create new views, but can modify some properties of existing views, including the center point,
screen mode, and zoom.

View properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Bounds Variant Array of Read-only. The bounding rectangle of this View relative to
4 Doubles the current document’s bounds.
CenterPoint Variant Array of The center point of this View relative to the current
2 Doubles document’s bounds.
RotateAngle Double The rotation angle of this view.
Parent Document Read-only. The document that contains this object.
ScreenMode AiScreenMode The mode of display for this view.
Zoom Double The zoom factor of this view, where 100.0 is 100%.

Setting a view
'Sets the view of the current document to full screen

Set appRef = CreateObject("Illustrator.Application")

Set frontDoc = appRef.activeDocument


Set viewsRef = frontDoc.Views
Set firstView = viewsRef(1)
firstView.ScreenMode = 3 'aiFullScreen
CHAPTER 1: VBScript Object Reference Views 264

Views
A collection of View objects in a document.

Views properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Document Read-only. The object’s document container.

Views methods

Method Returns What it does


Index Long Returns the index position of the object within the collection.
(item as View)

Item View Returns an object reference to the object identified by itemKey (name
(itemKey) or index).
CHAPTER 1: VBScript Object Reference Words 265

Words
A collection of words in a text item, where each word is a TextRange object.

Words properties

Property Value type What it is


Application Application Read-only. The Illustrator Application object.
Count Long Read-only. Number of elements in the collection.
Parent Object Read-only. The object’s container.

Words methods

Method Returns What it does


Add TextRange Adds a new word with the
(contents as String specified text contents at the
[, relativeObject as TextFrame] specified location in the
[, insertionLocation as AiElementPlacement])
current document. If location
is not specified, adds the
new word to the containing
text frame after the current
text selection or insertion
point.
AddBefore TextRange Inserts text at the beginning
(contents as String) of the range.
Index Long Returns the index position of
(itemPtr as TextRange) the object within the
collection.
Item TextRange Returns an object reference
(itemKey) to the object identified by
itemKey (name or index).

RemoveAll Nothing Deletes all objects in this


() collection.
CHAPTER 1: VBScript Object Reference Words 266

Counting words in a document


'Counts the number of words in the document and
'stores in numWords

Set appRef = CreateObject("Illustrator.Application")

If appRef.Documents.Count > 0 Then


numWords = 0
For Each textArt In appRef.ActiveDocument.TextFrames
numWords = numWords + textArt.TextRange.Words.Count
Next
End If
2 Enumerations Reference

These enumeration values are defined for object properties in the VBScript dictionary.

When defining an enumerated property’s value, use the numeric, rather than the text value of the
enumeration. For example, the following script statement, which uses the first enumeration in the
following table, AiAlternateGlyphsForm, specifies aiExpert as the constant value:
myCharacterAttributes.AlternateGlyphs = 2

Enumeration type Values What it means


AiAlternateGlyphsForm aiDefaultForm = 0
aiTraditional = 1
aiExpert = 2
aiJIS78Form = 3
aiJIS83Form = 4
aiHalfWidth = 5
aiThirdWidth = 6
aiQuarterWidth = 7
aiFullWidth = 8
aiProportionalWidth = 9
aiJIS90Form = 10
aiJIS04Form = 11

AiAntiAliasingMethod aiNoAntiAliasing = 0 The type of


aiArtOptimized = 1 antialiasing method
aiTypeOptimized = 2 used in the
rasterization.

 NoAntiAliasing
— No
antialiasing is
allowed.

 ArtOptimized
— Optimize for
the art object.

 TypeOptimized
— Optimize for
the type object.

267
CHAPTER 2: Enumerations Reference 268

Enumeration type Values What it means


AiArtClippingOption aiOutputArtBounds = 1 How the art are
aiOutputArtboardBounds = 2 clipped during
aiOutputCropRectBounds = 3 output. aiOutput-
ArtBounds =
Output size is the
size of the artwork.

aiOutput-
ArtboardBounds =
Output size is the
size of the artboard.

aiOutputCrop-
RectBounds =
Output size is the
size of the drop area.
AiAutoCADColors aiMax8Colors = 0
aiMax16Colors = 1
aiMax256Colors = 2
aiTrueColors = 3

AiAutoCADCompatibility aiAutoCADRelease13 = 0
aiAutoCADRelease14 = 1
aiAutoCADRelease15 = 2
aiAutoCADRelease18 = 3
aiAutoCADRelease21 = 4
aiAutoCADRelease24 = 5

AiAutoCADExportFileFormat aiDXF = 0
aiDWG = 1

AiAutoCADExportOption aiPreserveAppearance = 0
aiMaximizeEditability = 1

AiAutoCADGlobalScaleOption aiOriginalSize = 0
aiFitArtboard = 1
aiScaleByValue = 2

AiAutoCADRasterFormat aiPNG = 0
aiJPEG = 1

AiAutoCADUnit aiPoints = 0
aiPicas = 1
aiInches = 2
aiMillimeters = 3
aiCentimeters = 4
aiPixels = 5

AiAutoKernType aiNoAutoKern = 0
aiAuto = 1
aiOptical = 2
aiMetricsRomanOnly = 3

AiAutoLeadingType aiBottomToBottom = 0
aiTopToTop = 1
CHAPTER 2: Enumerations Reference 269

Enumeration type Values What it means


AiBaselineDirectionType aiStandardBaseline = 1
aiVerticalRotatedBaseline = 2
aiTateChuYokoBaseline = 3

AiBlendAnimationType aiNoBlendAnimation = 0
aiInSequence = 1
aiInBuild = 2

AiBlendModes aiNormalBlend = 0 The blend mode


aiMultiply = 1 used when
aiScreen = 2 compositing an
aiOverlay = 3
object.
aiSoftLight = 4
aiHardLight = 5
aiColorDodge = 6
aiColorBurn = 7
aiDarken = 8
aiLighten = 9
aiDifference = 10
aiExclusion = 11
aiHue = 12
aiSaturation = 13
aiColorBlend = 14
aiLuminosity = 15

AiBlendsExpandPolicy AiAutomaticallyConvertBlends = 1 Used by FXG file


AiRasterizeBlends = 2 format
AiBurasagariTypeEnum aiBurasagariNone = 0
aiBurasagariStandard = 1
aiBurasagariForced = 2

AiCaseChangeType aiUpperCase = 0
aiLowerCase = 1
aiTitleCase = 2
aiSentenceCase = 3

AiColor aiColorNone = 0 A color space.


aiColorCMYK = 1
aiColorGray = 2
aiColorRGB = 3
aiColorSpot = 4
aiColorPattern = 5
aiColorGradient = 6

AiColorConversion aiColorConversionNone = 0
aiColorConversionToDest = 1
aiColorConversionRepurpose = 2

AiColorConvertPurpose aiDefaultPurpose = 0 The purpose of color


aiForPreviewPurpose = 1 conversion using
aiForExportPurpose = 2 the
aiDummyPurpose = 4
ConvertSampleColor
method of the
Application class.
CHAPTER 2: Enumerations Reference 270

Enumeration type Values What it means


AiColorDestination aiColorDestinationNone = 0
aiColorDestinationDocCMYK = 1
aiColorDestinationWorkingCMYK = 2
aiColorDestinationWorkingRGB = 4
aiColorDestinationDocRGB = 3
aiColorDestinationProfile = 5

AiColorDitherMethod aiDiffusion = &H4466736E The method used to


aiNoise = &H424E6F69 dither colors in
aiNoReduction = &H4E6F6E65 exported GIF and
aiPatternDither = &H5074726E
PNG8 images.
AiColorModel aiRegistration = 0
aiProcess = 1
aiSpot = 2

AiColorProfile aiColorProfileNone = 0
aiIncludeAllProfile = 1
aiLeaveProfileUnchanged = 2
aiIncludeRGBProfile = 3
aiIncludeDestProfile = 4

AiColorReductionMethod aiAdaptive = &H41647074 The method used to


aiPerceptual = &H50726370 reduce the number
aiSelective = &H536C7476 of colors in exported
aiWeb = &H57656220
GIF and PNG8
images.
AiCompatibility aiJapaneseVersion3 = 3 The version of the
aiIllustrator8 = 8 Illustrator file format
aiIllustrator9 = 9 to create when
aiIllustrator10 = 10
saving an EPS or
aiIllustrator11 = 11
aiIllustrator12 = 12 Illustrator file.
aiIllustrator13 = 13
aiIllustrator14 = 14
aiIllustrator15 = 15
aiIllustrator16 = 16
aiIllustrator17 = 17
aiIllustrator19 = 19
aiIllustrator24 = 24
CHAPTER 2: Enumerations Reference 271

Enumeration type Values What it means


AiCompressionQuality aiNoCompression = 1 The quality of
aiJPEGMinimum = 3 bitmap compression
aiJPEGLow = 4 used when saving a
aiJPEGMedium = 5
PDF file.
aiJPEGHigh = 6
aiJPEGMaximum = 7
aiZIP4Bit = 8
aiZIP8Bit = 9
aiAutomaticJPEGMinimum = 10
aiAutomaticJPEGLow = 11
aiAutomaticJPEGMedium = 12
aiAutomaticJPEGHigh = 13
aiAutomaticJPEGMaximum = 14
aiAutomaticJPEG2000Minimum = 15
aiAutomaticJPEG2000Low = 16
aiAutomaticJPEG2000Medium = 17
aiAutomaticJPEG2000High = 18
aiAutomaticJPEG2000Maximum = 19
aiAutomaticJPEG2000Lossless = 20
aiJPEG2000Minimum = 21
aiJPEG2000Low = 22
aiJPEG2000Medium = 23
aiJPEG2000High = 24
aiJPEG2000Maximum = 25
aiJPEG2000Lossless = 26

AiCoordinateSystem aiDocumentCoordinateSystem = 1 The coordinate


aiArtboardCoordinateSystem = 2 system in use for
Illustrator.
AiCropOptions aiCropStandard = 1 The style of a
aiCropJapanese = 2 document’s
cropping box.
AiDocumentArtboardLayout aiGridByRow = 1 The layout of
aiGridByCol = 2 artboards in the new
aiRow = 3 document.
aiColumn = 4
aiRLGridByRow = 5
aiRLGridByCol = 6
aiRLRow = 7

AiDocumentColorSpace aiDocumentRGBColor = 1 The color space of a


aiDocumentCMYKColor = 2 document.
AiDocumentPresetType aiPrintPreset = 1 The preset types
aiWebPreset = 2 available for new
aiMobilePreset = 3 documents.
aiVideoPreset = 4
aiBasicCMYKPreset = 5
aiBasicRGBPreset = 6

AiDocumentLayoutStyle aiCascade = 1 The layout style for a


aiHorizontalTile = 2 document.
aiVerticalTile = 3
aiFloatAll = 4
aiConsolidateAll = 5
CHAPTER 2: Enumerations Reference 272

Enumeration type Values What it means


AiDocumentPreviewMode aiDefaultPreview = 1 The document
aiPixelPreview = 2 preview mode.
aiOverprintPreview = 3

AiDocumentRasterResolution aiScreenResolution = 1 The preset


aiMediumResolution = 2 document raster
aiHighResolution = 3 resolution.
AiDocumentTransparencyGrid aiTransparencyGridNone = 0 Document
aiTransparencyGridLight = 1 transparency grid
aiTransparencyGridMedium = 2 colors.
aiTransparencyGridDark = 3
aiTransparencyGridRed = 4
aiTransparencyGridOrange = 5
aiTransparencyGridGreen = 6
aiTransparencyGridBlue = 7
aiTransparencyGridPurple = 8

AiDocumentType aiIllustrator = 1 The file format used


aiEPS = 2 to save a file.
aiPDF = 3
aiFXG = 4

AiDownsampleMethod aiNoDownsample = 0
aiAverageDownsample = 1
aiSubsample = 2
aiBicubicDownsample = 3

AiElementPlacement aiPlaceInside = 0
aiPlaceAtBeginning = 1
aiPlaceAtEnd = 2
aiPlaceBefore = 3
aiPlaceAfter = 4

AiEPSPostScriptLevelEnum aiLevel2 = 2 Specifies the


aiLevel3 = 3 PostScript level to
use when saving an
EPS file.
AiEPSPreview aiNoPreview = 1 The preview image
aiBWTIFF = 2 format used when
aiTransparentColorTIFF = 3 saving an EPS file.
aiColorTIFF = 4

AiExportType aiJPEG = 1 The file format used


aiPhotoshop = 2 to export a file.
aiSVG = 3
aiPNG8 = 4
aiPNG24 = 5
aiGIF = 6
aiAutoCAD = 8
aiTIFF = 9

AiFigureStyleType aiDefaultFigureStyle = 0
aiTabular = 1
aiProportionalOldStyle = 2
aiProportional = 3
aiTabularOldStyle = 4
CHAPTER 2: Enumerations Reference 273

Enumeration type Values What it means


AiFiltersPreservePolicy aiExpandFilters = 1 The filters preserve
aiRasterizeFilters = 2 policy used by the
aiKeepFiltersEditable = 3 FXG file format.
AiFontBaselineOption aiNormalBaseline = 0
aiSuperScript = 1
aiSubScript = 2

AiFontCapsOption aiNormalCaps = 0
aiSmallCaps = 1
aiAllCaps = 2
aiAllSmallCaps = 3

AiFontOpenTypePositionOption aiOpenTypeDefault = 0
aiOpenTypeSuperScript = 1
aiOpenTypeSubScript = 2
aiNumerator = 3
aiDenominator = 4

AiFontSubstitutionPolicy aiSubstituteOblique = 0
aiSubstituteTint = 1
aiSubstituteDevice = 2

AiFXGVersion aiVersion1Pt0 = 1 The FXG file-format


aiVersion2Pt0 = 2 version.
AiGradientsPreservePolicy aiKeepGradientsEditable = 3 The gradients
aiAutomaticallyConvertGradients = 4 preserve policy used
by the FXG file
format.
AiGradientType aiLinearGradient = 1 The type of the
aiRadialGradient = 2 gradient, radial or
linear.
AiImageColorSpace aiImageGrayScale = 1 The color space of a
aiImageRGB = 2 raster item or an
aiImageCMYK = 3 exported Photoshop
aiImageLAB = 4
file.
aiImageSeparation = 5
aiImageDeviceN = 6
aiImageIndexed = 7

AiInkPrintStatus aiDisableInk = 0
aiEnableInk = 1
aiConvertInk = 2

AiInkType aiCyanInk = 0
aiMagentaInk = 1
aiYellowInk = 2
aiBlackInk = 3
aiCustomInk = 4

AiJavaScriptExecutionMode aiNeverShowDebugger = 1
aiDebuggerOnError = 2
aiBeforeRunning = 3
CHAPTER 2: Enumerations Reference 274

Enumeration type Values What it means


AiJustification aiLeft = 0 The alignment or
aiRight = 1 justification for a
aiCenter = 2 paragraph of text.
aiFullJustifyLastLineLeft = 3
aiFullJustifyLastLineRight = 4
aiFullJustifyLastLineCenter = 5
aiFullJustify = 6

AiKinsokuOrderEnum aiPushIn = 0
aiPushOutFirst = 1
aiPushOutOnly = 2

AiKnockoutState aiDisabled = 0 The type of


aiEnabled = 1 knockout to use on a
aiInherited = 2 PageItem.
aiKnockoutUnknown = -1

AiLanguageType aiBokmalNorwegian = 8
aiBrazillianPortuguese = 11
aiBulgarian = 20
aiCanadianFrench = 3
aiCatalan = 17
aiChinese = 29
aiCzech = 22
aiDanish = 16
aiDutch = 15
aiDutch2005Reform = 43
aiEnglish = 0
aiFinnish = 1
aiGerman2006Reform = 42
aiGreek = 25
aiHungarian = 28
aiIcelandic = 27
aiItalian = 7
aiJapanese = 30
aiNynorskNorwegian =
aiOldGerman = 5
aiPolish = 23
aiRomanian = 24
aiRussian = 18
aiSpanish = 12
aiSerbian = 21
aiStandardFrench = 2
aiStandardGerman = 4
aiStandardPortuguese =
aiSwedish = 13
aiSwissGerman = 6
aiSwissGerman2006Reform = 44
aiTurkish = 26
aiUKEnglish = 14
aiUkranian = 19

AiLayerOrderType aiTopDown = 2
aiBottomUp = 1
CHAPTER 2: Enumerations Reference 275

Enumeration type Values What it means


AiLibraryType aiIllustratorArtwork = 1
aiSwatches = 2
aiBrushes = 3
aiGraphicStyles = 4
aiSymbols = 5

AiMonochromeCompression aiCCIT3 = 1 The type of


aiCCIT4 = 2 monochrome
aiMonoZIP = 3 bitmap compression
aiNoMonoCompression = 0
to use when saving a
aiRunLength = 4
PDF.
AiOutputFlattening aiPreserveAppearance = 1 Specifies how
aiPreservePaths = 0 transparency are
flattened when
saving EPS and
Illustrator file
formats with
compatibility set to
versions of
Illustrator less than
9.
AiPageItemType aiCompoundPathItem = 1 The type (class) of
aiGraphItem = 2 art item that is
aiGroupItem =3 represented by a
aiMeshItem = 4
particular PageItem.
aiPathItem = 5
aiPlacedItem = 6
aiPluginItem =7
aiRasterItem =8
aiSymbolItem = 9
aiTextFrame = 10
aiLegacyTextItem = 11
aiNonNativeItem = 12

AiPageMarksStyle aiPageMarksRoman = 0
aiPageMarksJapanese = 1

AiPathPointSelection aiAnchorPoint = 2 Specifies which


aiLeftDirection = 3 points, if any, of a
aiLeftRightPoint = 5 path point are
aiNoSelection = 1
selected.
aiRightDirection = 4

AiPDFBoxType aiPDFArtBox = 0
aiPDFCropBox = 1
aiPDFTrimBox = 2
aiPDFBleedBox = 3
aiPDFMediaBox = 4
aiPDFBoundingBox = 5
CHAPTER 2: Enumerations Reference 276

Enumeration type Values What it means


AiPDFChangesAllowedEnum aiChange128None = 1
aiChange128EditPage = 2
aiChange128FillForm = 3
aiChange128Commenting = 4
aiChange128AnyChanges = 5
aiChange40None = 6
aiChange40PageLayout = 8
aiChange40Commenting = 7
aiChange40AnyChanges = 9

AiPDFCompatibility aiAcrobat4 = 4 The version of the


aiAcrobat5 = 5 Acrobat file format
aiAcrobat6 = 6 to create when
aiAcrobat7 = 7
saving a PDF file.
aiAcrobat8 = 8

AiPDFOverprint aiPreservePDFOverprint = 1
aiDiscardPDFOverprint = 2

AiPDFPrintAllowedEnum aiPrint128None = 1
aiPrint128LowResolution = 2
aiPrint128HighResolution = 3
aiPrint40None = 4
aiPrint40HighResolution = 5

AiPDFTrimMarkWeight aiTrimMarkWeight0125 = 1
aiTrimMarkWeight025 = 2
aiTrimMarkWeight05 = 3

AiPDFXStandard aiPDFXNone = 1
aiPDFX1A2001 = 2
aiPDFX1A2003 = 3
aiPDFX32002 = 4
aiPDFX32003 = 5
aiPDFX42007 = 6

AiPerspectiveGridType aiOnePointPerspectiveGridType = 1
aiTwoPointPerspectiveGridType = 2
aiThreePointPerspectiveGridType = 3
aiInvalidPerspectiveGridType = 0

AiPerspectiveGridPlaneType aiLEFTPLANE = 1
aiRIGHTPLANE = 2
aiFLOORPLANE = 3
aiNOPLANE = 0

AiPhotoshopCompatibility aiPhotoshop8 = 1
aiPhotoshop6 = 2

AiPointType aiSmooth = 1 The type of path


aiCorner = 2 point, either a curve
or a corner.
AiPolarityValues aiPositive = 1
aiNegative = -1

AiPostScriptImageCompressionType aiImageCompressionNone = 0
aiImageCompressionRLE = 1
aiImageCompressionJPEG = 2
CHAPTER 2: Enumerations Reference 277

Enumeration type Values What it means


AiPrintArtworkDesignation aiVisiblePrintableLayers = 0
aiVisibleLayers = 1
aiAllLayers = 2

AiPrintColorIntent aiPerceptualIntent = 0
aiSaturationIntent = 1
aiRelativeColorimetric = 2
aiAbsoluteColorimetric = 3

AiPrintColorProfile aiOldstyleProfile = 0
aiSourceProfile = 1
aiPrinterProfile = 2
aiCustomProfile = 3

AiPrintColorSeparationMode aiComposite = 0
aiOnHostSeparation = 1
aiInRIPSeparation = 2

AiPrinterColorMode aiColorPrinter = 0
aiGrayscalePrinter = 1
aiBlackAndWhitePrinter = 2

AiPrinterPostScriptLevelEnum aiPSLevel1 = 1
aiPSLevel2 = 2
aiPSLevel3 = 3

AiPrinterTypeEnum aiUnknownPrinterType = 0
aiPostScriptPrinter = 1
aiNonPostScriptPrinter = 2

AiPrintFontDownloadMode aiDownloadNone = 0
aiDownloadSubset = 1
aiDownloadComplete = 2

AiPrintingBounds aiArtboardBounds = 0
aiArtworkBounds = 1

AiPrintOrientation aiPortrait = 0
aiLandscape = 1
aiReversePortrait = 2
aiReverseLandscape = 3
aiAutoRotate = 4

AiPrintPosition aiTranslateTopLeft = 1
aiTranslateTop = 2
aiTranslateTopRight = 3
aiTranslateLeft = 4
aiTranslateCenter = 5
aiTranslateRight = 6
aiTranslateBottomLeft = 7
aiTranslateBottom = 8
aiTranslateBottomRight = 9

AiPrintTiling aiTileSingleFullPage = 0
aiTileFullPages = 1
aiTileImageableAreas = 2

AiRasterizationColorModel aiDefaultColorModel = 1 The color model for


aiGrayscale = 2 the rasterization.
aiBitmap = 3
CHAPTER 2: Enumerations Reference 278

Enumeration type Values What it means


AiRasterLinkState aiDataFromFile = 2 The status of a raster
aiDataModified = 3 item’s linked image,
aiNoData = 1 if the image is stored
externally.
AiRulerUnits aiUnitsCM = 3 The default
aiUnitsInches = 2 measurement units
aiUnitsMM = 6 for the rulers in a
aiUnitsPicas = 5
document.
aiUnitsPoints = 4
aiUnitsQ = 7
aiUnitsPixels = 8
aiUnitsUnknown = 1

AiSaveOptions aiDoNotSaveChanges = 2 Save options


aiPromptToSaveChanges = 3 provided when
aiSaveChanges = 1 closing a document.
AiScreenMode aiDesktop = 2 The mode of display
aiFullScreen = 3 for a view.
aiMultiWindow = 1

AiSpotColorKind aiSpotCMYK = 0 The custom color


aiSpotRGB = 1 kind of the spot
aiSpotLAB = 2 color.
AiStrokeCap aiButtEndCap = 1 The type of line
aiProjectingEndCap = 3 capping for a path
aiRoundEndCap = 2 stroke.
AiStrokeJoin aiBevelEndJoin = 3 The type of joints for
aiMiterEndJoin = 1 a path stroke.
aiRoundEndJoin = 2

AiStyleRunAlignmentType aiAlignBottom = 0
aiICFBottom = 1
aiRomanBaseline = 2
aiAlignCenter = 3
aiICFTop = 4
aiAlignTop =5

AiSVGCSSPropertyLocation aiEntities = 2 How should the CSS


aiStyleAttributes = 1 properties of the
aiStyleElements = 3 document be
aiPresentationAttributes = 4
included in an
exported SVG file?
AiSVGDocumentEncoding aiASCII = 1 How text is encoded
aiUTF16 = 3 when exporting an
aiUTF8 = 2 SVG file.
AiSVGDTDVersion aiSVG1_0 = 1 SVG version
aiSVG1_1 = 2 compatibility for
aiSVGBasic1_1 = 5 exported file.
aiSVGTiny1_1 = 3
aiSVGTiny1_1Plus = 4
aiSVGTiny1_2 = 6
CHAPTER 2: Enumerations Reference 279

Enumeration type Values What it means


AiSVGFontSubsetting aiAllGlyphs = 7 What font glyphs are
aiCommonEnglish = 3 included in an
aiCommonRoman = 5 exported SVG file?
aiGlyphsUsed = 2
aiGlyphsUsedPlusEnglish = 4
aiGlyphsUsedPlusRoman = 6
aiNoFonts = 1

AiSVGFontType aiCEFFont = 1 Types for fonts


aiOutlineFont = 3 included in
aiSVGFont = 2 exported SVG files.
AiSymbolRegistrationPoint aiSymbolTopLeftPoint = 1 The symbol
aiSymbolTopMiddlePoint = 2 registration point.
aiSymbolTopRightPoint = 3
aiSymbolMiddleLeftPoint = 4
aiSymbolCenterPoint = 5
aiSymbolMiddleRightPoint = 6
aiSymbolBottomLeftPoint = 7
aiSymbolBottomMiddlePoint = 8
aiSymbolBottomRightPoint = 9

AiTabStopAlignment aiCenterTab = 1 The alignment of a


aiDecimalTab = 3 tab stop.
aiLeftTab = 0
aiRightTab = 2

AiTextAntialias aiNone = 1 The type of text


aiSharp = 2 anti-aliasing in a text
aiCrisp = 3 art item.
aiStrong = 4

AiTextOrientation aiHorizontal = 0 The orientation of


aiVertical = 1 text in a text frame.
AiTextPreservePolicy aiOutlineText = 1 The text preserve
aiRasterizeText = 2 policy used by the
aiKeepTextEditable = 3 FXG file format.
aiAutomaticallyConvertText = 4

AiTextType aiAreaText = 1 The type of text art


aiPathText = 2 displayed by this
aiPointText = 0 object.
AiTIFFByteOrder aiIBMPC = 0 The byte order to
aiMacintosh = 1 use when exporting
to TIFF.
AiTracingModeType aiTracingModeBlackAndWhite = 2
aiTracingModeColor = 0
aiTracingModeGray = 1
CHAPTER 2: Enumerations Reference 280

Enumeration type Values What it means


AiTransformation aiTransformBottom = 7 The point to use as
aiTransformBottomLeft = 4 the anchor point
aiTransformBottomRight = 10 about which an
aiTransformCenter = 6
object is rotated,
aiTransformDocumentOrigin = 1
aiTransformLeft = 3 resized or
aiTransformRight = 9 transformed.
aiTransformTop = 5
aiTransformTopLeft = 2
aiTransformTopRight = 8

AiTrappingType aiNormalTrapping = 0
aiTransparent = 1
aiOpaque = 2
aiIgnoreOpaque = 3

AiUserInteractionLevel aiDontDisplayAlerts = -1
aiDisplayAlerts = 2

AiVariableKind aiGraph = 5 The enumerated


aiImage = 4 type of the kind of
aiTextual = 3 variable.
aiUnknownKind = 1
aiVisibility = 2

AiViewRasterType aiTracingViewRasterAdjusted- The raster viewing


Image = 2 mode for tracing.
aiTracingViewRasterNoImage = 0
aiTracingViewRasterOriginal-
Image = 1
aiTracingViewRasterTransparent-
Image = 3

AiViewVectorType aiTracingViewVectorNoTracing- The vector viewing


Result = 0 mode for tracing.
aiTracingViewVectorOutlines = 2
aiTracingViewVectorOutlines-
WithTracing = 3
aiTracingViewVectorTracing-
Result = 1

AiWariChuJustificationType aiWariChuLeft = 0
aiWariChuRight = 1
aiWariChuCenter = 2
aiWariChuFullJustifyLastLine-
Left = 3
aiWariChuFullJustifyLastLine-
Right = 4
aiWariChuFullJustifyLastLine-
Center = 5
aiWariChuAutoJustify = 6
CHAPTER 2: Enumerations Reference 281

Enumeration type Values What it means


AiZOrderMethod aiBringForward = 2 The method used to
aiBringToFront = 1 arrange an art item’s
aiSendBackward = 3 position in the
aiSendToBack = 4
stacking order of its
parent group or
layer, as specified
with the ZOrder
method.

You might also like