Illustrator (Desktop) SDK/Scripting Issues
134 results found
-
Arabic shaping breaks when applying tracking in GE-Thameen
Arabic shaping breaks when applying tracking in GE-Thameen and other Arabic fonts in Illustrator 29.6.1. The same file works fine in 26.2.1. World-Ready Composer and RTL settings are correctly enabled. This appears to be a regression in OpenType shaping handling with tracking applied.
1 vote -
[BUG] AICloudDocument API is broken
Adobe Illustrator 29.6.1 + Adobe Illustrator SDK Build 207
The
AICloudDocument
suite’sGetFirstNRecentCloudDocuments
function contains 2 suite-breaking bugs:The
numRecentDocuments
argument is being ignored, e.g. if its value is 10, the function SHOULD return the asset refs for the 10 newest AIC documents stored in the user’s Adobe Cloud. Instead, it ALWAYS returns an unpredictable number of asset refs, usually 110-120.The
reqHandleOut
argument SHOULD return a bookmark pointer to the user’s remaining AIC documents, which can be passed toGetNextNRecentCloudDocuments
to get the next batch of asset refs. Instead, it ALWAYS returns NULL. This means thatGetNextNRecentCloudDocuments
CANNOT be…
2 votes -
The ability to read/write live corner widget option
I would like Adobe to give some love to the Illustrator’s scripting API overall. So many things are missing.
Please give us the ability to read/write live corner widget option (as well as any other option in Ai, really).Original idea by Jean-Claude Tremblay
4 votes -
The ability to read/write bleed value
I would like Adobe to give some love to the Illustrator’s scripting API overall. So many things are missing.
Please give us the ability to read/write bleed.
There are some hacks we have to dance with around the problem — community.adobe.com/t5/illustrator-discussions/setting-the-bleed-in-ai-via-javascript/m-p/8975095 — but the solution is rather clunky.Original idea by Jean-Claude Tremblay
6 votes -
[Typo] app.flattenerPresetList of Illustrator JavaScript Reference.pdf
There is a typo in app.flattenerPresetList in Illustrator JavaScript Scripting Reference.pdf. The wrong property name is listed and developers and users cannot get it. It would be helpful if it could be corrected.
According to my research, this is wrong from CS3 version to the current (2025 v1).
In addition, the return value type should be “array of string”, not “object”.

Expected name
app.flattenerPresetsList (add "s" to Preset -> Presets)
Actual name
app.flattenerPresetList ("s" is missing from Presets)
Attached files
- flattenerPresetList.png
5 votes -
Dialog display in the event of a path segment exceedance during script processing is displayed with 8191 pieces.
Illustrator ver.29.3.1
The current Illustrator specification allows "31999" segments to be included in a single path, but the exceedance error displayed during script execution is displayed at "8191" segments. This is the value of the limit in past versions and has not been updated when the specification was changed.
When run the following script, we get an error dialog with 8191 segments, but there are 32000 path points and 31999 segments added to the path on the document.
var depth = 8;
var size = 500;
var doc = app.activeDocument;
var layer = doc.layers.add();
layer.name = "Hilbert Curve";
var pth…2 votes -
Move gradient swatch to swatch group
In new releases of Adobe Illustrator, it's now possible to move gradient swatches into swatch groups.
Previously, we expectedly got an error when trying mySwatchGroup.addSwatch(myGradientSwatch) >>> an Illustrator error occurred: 561402708 ('TSv!')
What's happening now...Same thing! The user can group gradients in the Illustrator interface, and the scripts are still unaware of this fix
Mac OS. Adobe Illustrator CC 2025 v29.3
4 votes -
Access to recent files via a script
Once upon a time, app.recentFiles returned an array of recently used files.
It would be nice to have that feature back4 votes -
Script cannot detect that app.openCloudDocument failed
en
When an error occurs during the execution of openCloudDocument, Illustrator forces a message in a dialog.
The message is something like this. Not sure what it would be displayed in English.
Cannot open file.
The current account does not have access permission to this file. Contact the owner for more details.
The message cannot be circumvented by enclosing it in a “try” syntax, nor can the error be caught in a “catch” statement. In other words, this message may stop the batch process.
The ideal behavior is to be able to catch an error…
4 votes -
[Typo] app.OpenCloudDocument() of Illustrator JavaScript Reference.pdf
There is a typo in app.OpenCloudDocument in Illustrator JavaScript Scripting Reference.pdf. The wrong function name is listed and developers and users cannot call OpenCloudDocument(). It would be helpful if it could be corrected.
According to my research, this is wrong from CC 2021 version to the current (2025 v1).
Expected Name (Correct):
app.openCloudDocument ("o" in "open" is lowercase -> openCloudDocument)Actual Name (Wrong):
app.OpenCloudDocument ("O" in "Open" is uppercase -> OpenCloudDocument)Attached Files
* OpenCloudDocument.png6 votes -
[Typo] Document.SaveToCloud() of Illustrator JavaScript Reference.pdf
There is a typo in Document.SaveToCloud in Illustrator JavaScript Scripting Reference.pdf. The wrong function name is listed and developers and users cannot call SaveToCloud(). It would be helpful if it could be corrected.
According to my research, this is wrong from CC 2021 version to the current (2025 v1).
Expected Name:
Document.saveToCloud ("s" is lowercase -> saveToCloud)
Actual Name:
Document.SaveToCloud ("S" is uppercase -> SaveToCloud)
Attached Files:
- SaveToCloud.png
9 votes -
[Scripting API] Give access to a SymbolItem's "anchor" and matrix
It would be great to have access to a SymbolItem's "anchor" and matrix (as read/write properties). Setting a new anchor [x,y] would move the anchor (and the SymbolItem) to that point, and setting a new matrix would replace the SymbolItem's existing matrix.
3 votes -
Duplicating a group with a script does not change/update groupItems.length
When you duplicate a group via script (check the video and screenshots) activeDocument.groupItems.length is not reflecting that. It stays the same. app.redraw() is not helping. Only when you set the new group to .selected = true you can force an update. But that slows down everything when you have a lot of groups.
Video: https://drive.google.com/file/d/1dd0PyBRDBciNnUgnhGLV7Hf40rrG_vSb/view
Steps to Reproduce:
All with script!
1. Create a group (put something in that group)
2. Alert the activeDocument.groupItems.length (it's now 1)
2. Duplicate the group.
3. Alert the activeDocument.groupItems.length: it stays the same (1 instead of 2)
Please take a look at the script…3 votes -
DocumentRasterResolution - How do we set HighResolution? Please give an example of how to set and how to read document resolution. Thanks
DocumentRasterResolution - How do we set HighResolution? Please give an example of how to set and how to read document resolution. Thanks.
Example:
DocumentRasterResolution.HighResolution; //Does nothing So how to do? Why is this not an app.documents.add() function or method to begin with? Why is the app.document.add so limited in parameters? I would think there would be a huge parameter list but there is not.3 votes -
DocumentArtboardLayout under app.documents.add is broken
var aDoc = app.documents.add(DocumentColorSpace.CMYK, 612.0, 792.0, 3, DocumentArtboardLayout.GridByCol, 40.0, 1);
Running the above script.jsx GridByCol broken. I get two rows, should be a single column. Changed GridByCol to GridByRows and also outputs 2 rows of artboards. DocumentArtboardLayout is broken.
3 votes -
[Typo] View rotateAngle property in omv.xml
For several years, the same incorrect information about the document rotation property has been repeated in the omv.xml (Object Model Viewer) file in folder "Scripting Dictionaries CC". Checked in СС 2023, 2024, 2025
/Library/Application Support/Adobe/Scripting Dictionaries CC/Illustrator [vers.]/omv.xml
At the same time, the PDF documentation "Adobe Illustrator Scripting Reference: JavaScript", the property name is correct.
Expected Property Name:
rotateAngleActual Property Name in omv.xml:
rotate<classdef name="View" dynamic="true">
....
<property name="rotate">
<shortdesc>The rotation angle of this view.</shortdesc>
<datatype>
<type>number</type>
</datatype>
</property>
...
</classdef>3 votes -
[Typo] app.tracingPresetList of Illustrator JavaScript Reference.pdf
There is a typo in app.tracingPresetList in Illustrator JavaScript Scripting Reference.pdf. The wrong property name is listed and developers and users cannot get tracingPreset. It would be helpful if it could be corrected.
According to my research, this is wrong from CS2 version to the current (2024 v1).
Expected Name:
app.tracingPresetsList (add "s" to Preset -> Presets)
Actual Name:
app.tracingPresetList ("s" is missing from Presets)
8 votes -
AIArtStyleParser->CreateNewStyle not working in Illustrator 28.7 with SDK Build 130 and 709
AIArtStyleParser->CreateNewStyle return 0 (no error) but also the pointer to the new AIArtStyleHandle is invalid.
Also AIArtStyleParser->NewPaintFieldStroke doesn't work.It worked in previous Illustrator Beta releases with SDK Build 130 (April 2024)
1 vote -
When getting ink.name, encoding gets broken for non-Latin languages: Chinese, Japanese, Russian, etc.
A script cannot support Chinese, Japanese and other languages when getting ink.name, and it displays garbled characters.
var doc = app.activeDocument;
var inkList = doc.inkList;
var inkUsage = [];for (var i = 0; i < inkList.length; i++) {
var ink = inkList[i];
var inkName = ink.name;
inkUsage.push(inkName);
}alert(inkUsage.join("\n"));
$.write(inkUsage.join("\n"));This test script above gives a result like in the screenshot attached.
Problem found by Aprking
Original discussion:
https://community.adobe.com/t5/illustrator-discussions/how-to-make-the-script-support-chinese-japanese-and-other-languages-when-getting-ink-name/m-p/142477916 votes -
[BUG] exportFile() changes spaces to hyphens in file name
//how to reproduce:
app.activeDocument.exportFile(new File("~/desktop/test test"), ExportType.GIF);//types affected - ExportType.PNG24, .PNG8, .JPEG, .GIF //types exporting with no unwanted hyphen - .TIFF, .SVG
//persists on win and mac
2 votes
- Don't see your idea?