mirror of
https://github.com/github/awesome-copilot.git
synced 2026-05-01 04:35:55 +00:00
* new skill adobe-illustrator-scripting * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
131 lines
4.9 KiB
Markdown
131 lines
4.9 KiB
Markdown
# Illustrator JavaScript Object Model Quick Reference
|
|
|
|
## Containment Hierarchy
|
|
|
|
```
|
|
Application (app)
|
|
└─ Document
|
|
├─ Layer
|
|
│ ├─ pathItems[] → PathItem → PathPoint[]
|
|
│ ├─ compoundPathItems[] → CompoundPathItem
|
|
│ ├─ textFrames[] → TextFrame
|
|
│ │ ├─ characters[] → TextRange (single char)
|
|
│ │ ├─ words[] → TextRange (word)
|
|
│ │ ├─ paragraphs[] → TextRange (paragraph)
|
|
│ │ ├─ lines[] → TextRange (line)
|
|
│ │ └─ insertionPoints[]
|
|
│ ├─ placedItems[] → PlacedItem
|
|
│ ├─ rasterItems[] → RasterItem
|
|
│ ├─ meshItems[] → MeshItem
|
|
│ ├─ pluginItems[] → PluginItem
|
|
│ ├─ graphItems[] → GraphItem
|
|
│ ├─ symbolItems[] → SymbolItem → Symbol
|
|
│ ├─ groupItems[] → GroupItem (recursive pageItems)
|
|
│ ├─ nonNativeItems[] → NonNativeItem
|
|
│ └─ legacyTextItems[] → LegacyTextItem
|
|
├─ Artboard[]
|
|
├─ Swatch[] / Spot[] / Gradient[] / Pattern[]
|
|
├─ GraphicStyle[] / Brush[] / Symbol[]
|
|
├─ Story[]
|
|
├─ CharacterStyle[] / ParagraphStyle[]
|
|
├─ Variable[] / Dataset[]
|
|
└─ View[]
|
|
```
|
|
|
|
## Artwork Item Types (pageItems members)
|
|
|
|
| Type | typename | Collection | Notes |
|
|
|---|---|---|---|
|
|
| Path | `PathItem` | `pathItems` | Lines, shapes, freeform paths |
|
|
| Compound path | `CompoundPathItem` | `compoundPathItems` | Multiple paths combined |
|
|
| Group | `GroupItem` | `groupItems` | Contains nested pageItems |
|
|
| Text frame | `TextFrame` | `textFrames` | Point, area, or path text |
|
|
| Placed image | `PlacedItem` | `placedItems` | Linked external files |
|
|
| Raster image | `RasterItem` | `rasterItems` | Embedded bitmaps |
|
|
| Mesh | `MeshItem` | `meshItems` | Gradient mesh objects |
|
|
| Graph | `GraphItem` | `graphItems` | Chart/graph objects |
|
|
| Plugin item | `PluginItem` | `pluginItems` | Plugin-generated art |
|
|
| Symbol instance | `SymbolItem` | `symbolItems` | Instance of a Symbol |
|
|
| Non-native | `NonNativeItem` | `nonNativeItems` | Foreign objects |
|
|
| Legacy text | `LegacyTextItem` | `legacyTextItems` | Pre-CS text objects |
|
|
|
|
## Color Object Types
|
|
|
|
| Object | Color Space | Value Range | Notes |
|
|
|---|---|---|---|
|
|
| `RGBColor` | RGB | 0-255 per channel | `.red`, `.green`, `.blue` |
|
|
| `CMYKColor` | CMYK | 0-100 per channel | `.cyan`, `.magenta`, `.yellow`, `.black` |
|
|
| `GrayColor` | Grayscale | 0-100 | `.gray` (0=black, 100=white) |
|
|
| `LabColor` | Lab | L: 0-100, a/b: -128 to 127 | `.l`, `.a`, `.b` |
|
|
| `SpotColor` | Spot | tint 0-100 | `.spot`, `.tint` |
|
|
| `PatternColor` | Pattern | - | `.pattern`, `.matrix` |
|
|
| `GradientColor` | Gradient | - | `.gradient`, `.origin`, `.angle` |
|
|
| `NoColor` | None | - | Transparent/no fill |
|
|
|
|
## Common Scripting Constants
|
|
|
|
### Document and Color
|
|
|
|
- `DocumentColorSpace.RGB` / `.CMYK`
|
|
|
|
### Text
|
|
|
|
- `Justification.LEFT` / `.CENTER` / `.RIGHT` / `.FULLJUSTIFY` / `.FULLJUSTIFYLASTLINELEFT` / `.FULLJUSTIFYLASTLINECENTER` / `.FULLJUSTIFYLASTLINERIGHT`
|
|
- `TextType.POINTTEXT` / `.AREATEXT` / `.PATHTEXT`
|
|
- `FontBaselineOption.NORMALBASELINE` / `.SUPERSCRIPT` / `.SUBSCRIPT`
|
|
|
|
### Paths
|
|
|
|
- `PointType.SMOOTH` / `.CORNER`
|
|
- `StrokeCap.BUTTENDCAP` / `.ROUNDENDCAP` / `.PROJECTINGENDCAP`
|
|
- `StrokeJoin.MITERENDJOIN` / `.ROUNDENDJOIN` / `.BEVELENDJOIN`
|
|
|
|
### Transformations
|
|
|
|
- `Transformation.DOCUMENTORIGIN` / `.BOTTOM` / `.BOTTOMLEFT` / `.BOTTOMRIGHT` / `.CENTER` / `.LEFT` / `.RIGHT` / `.TOP` / `.TOPLEFT` / `.TOPRIGHT`
|
|
|
|
### Blend Modes
|
|
|
|
- `BlendModes.NORMAL` / `.MULTIPLY` / `.SCREEN` / `.OVERLAY` / `.SOFTLIGHT` / `.HARDLIGHT` / `.COLORDODGE` / `.COLORBURN` / `.DARKEN` / `.LIGHTEN` / `.DIFFERENCE` / `.EXCLUSION` / `.HUE` / `.SATURATIONBLEND` / `.COLORBLEND` / `.LUMINOSITY`
|
|
|
|
### Element Placement
|
|
|
|
- `ElementPlacement.PLACEATBEGINNING` / `.PLACEATEND` / `.PLACEBEFORE` / `.PLACEAFTER` / `.INSIDE`
|
|
|
|
### Z-Order
|
|
|
|
- `ZOrderMethod.BRINGTOFRONT` / `.SENDTOBACK` / `.BRINGFORWARD` / `.SENDBACKWARD`
|
|
|
|
### Save/Export
|
|
|
|
- `SaveOptions.SAVECHANGES` / `.DONOTSAVECHANGES` / `.PROMPTTOSAVECHANGES`
|
|
- `ExportType.PNG24` / `.PNG8` / `.JPEG` / `.SVG` / `.TIFF` / `.PHOTOSHOP` / `.AUTOCAD` / `.FLASH` / `.GIF`
|
|
- `Compatibility.ILLUSTRATOR8` through `.ILLUSTRATOR24`
|
|
- `PDFCompatibility.ACROBAT4` through `.ACROBAT8`
|
|
|
|
### Gradient
|
|
|
|
- `GradientType.LINEAR` / `.RADIAL`
|
|
|
|
### Variables
|
|
|
|
- `VariableKind.TEXTUAL` / `.IMAGE` / `.VISIBILITY` / `.GRAPH`
|
|
|
|
### User Interaction
|
|
|
|
- `UserInteractionLevel.DISPLAYALERTS` / `.DONTDISPLAYALERTS`
|
|
|
|
### Print
|
|
|
|
- `PrintArtworkDesignation.ALLLAYERS` / `.VISIBLELAYERS` / `.VISIBLEPRINTABLELAYERS`
|
|
|
|
## Unit Conversions
|
|
|
|
| From | To Points | Formula |
|
|
|---|---|---|
|
|
| Inches | Points | `inches * 72` |
|
|
| Centimeters | Points | `cm * 28.346` |
|
|
| Millimeters | Points | `mm * 2.834645` |
|
|
| Picas | Points | `picas * 12` |
|
|
| Em units | Points | `(emUnits * fontSize) / 1000` |
|