Illustrator (Desktop) Bugs
When reporting a bug, please provide a detailed description with the following:
- Details of your operating system
- The version of Adobe Illustrator (desktop)
- The steps you were taking when you experienced the issues
- Your expected result and the actual result
- Upload your Illustrator file or a video (screen recording or gif, this helps us most to reproduce the issue and resolve it)
80 results found
-
Illustrator 30.8: ExtendScript debugger cannot attach — ESTK endpoint never responds
Summary
In Illustrator 30.8.0, the Adobe ExtendScript Debugger extension for VS Code (v2.1.0) can no longer attach to or launch scripts. Rolling back to 30.7.0 fixes it completely, with no other change to VS Code, the extension, or the launch configuration — so this is a regression introduced between 30.7 and 30.8.
The failure is narrow and specific: in 30.8, Illustrator's ExtendScript debug (
#estk) channel accepts the debugger's<connect/>handshake but never sends any response. The message is delivered successfully — the core library returnsstatus: 0with a valid serial number — and then nothing…7 votesExpected to be fixed in the lates Beta Build 31.0.0.29 — please verify
-
[ExtendScript] Cannot set Document.rulerUnits
There is no way via scripting to set a document's rulerUnits (pts, mm, inch, etc) because the property Document.rulerUnits is—erroneously, surely—read only.
If Document.rulerUnits was writable, we would simply do this:
var doc = app.activeDocument; doc.rulerUnits = RulerUnits.MILLIMETERS;This is important because there is literally no way to set this via script, except to create a new document.
7 votes -
Incorrect word count via script
At some point (I think v27) Illustrator has changed its word counting/division algorithm.
So, where previously the results were sensible:
"This.Was.Four.Words" — word count: 4
"This.Is.3.Words" — word count: 4
"I.WF05f.07.AB.000" — word count: 5
"I.WF05f.AB.07.000" — word count: 5In version 27.4 the results are now confused:
"This.Was.Four.Words" — word count: 1
"This.Is.3.Words" — word count: 3
"I.WF05f.07.AB.000" — word count: 4
"I.WF05f.AB.07.000" — word count: 2For a discussion on the topic, and a testing script, see this thread.
Note: maybe this bug was introduced while fixing this bug.
7 votes -
[ExtendScript] TextFrame cannot be selected after creating
In script, after creating a new TextFrame it cannot be selected the first time.
(function () { if (0 === app.documents.length) return alert('Please open a document and try again.'); var doc = app.activeDocument, results = ['Results:']; // experiment 1 var tf1 = doc.textFrames.add(); tf1.contents = '1. created, selected:'; tf1.selected = true; results.push(tf1.contents + ' ' + (tf1.selected ? 'PASS' : 'FAIL')); // experiment 2 var tf2 = doc.textFrames.add(); tf2.contents = '2. created, selected twice:'; tf2.selected = true; tf2.selected = true; results.push(tf2.contents + ' ' + (tf2.selected ? 'PASS' : 'FAIL')); alert(results.join('\n')); })();Expected results: both tests would pass.
Actual results:…6 votes -
Bug: exporting SVG's via exportFile(fileObjSingle, ExportType.SVG, svgOptions). has completely changed since 28.4
(macOS & Windows, latest versions) Beginning with Illustrator 28.4, SVG files exported via Javascript are in a very different format.
The following examples are exported with:
doc.exportFile(fileObjSingle, ExportType.SVG, svgOptions);
The SVG option for the format of the SVG is STYLEELEMENTS.
See attached captures for the differences.
There are many many changes:
- the style definitions are handled differently
- ID's now strip out characters like / or < instead of replacing them with entities
- the original names are included via data-name tags
- the comment from the 2nd line is now gone
- clipping paths are handled differently
I have built a complex program…
6 votes -
Add Bleed setting / reading value in Illustrator JavaScript
I checked illustrator JavaScript Scripting Reference
In 2017, only the document bleeding documentbleedoffsetrect can be set, but the bleeding size that has been set in the document cannot be obtained. Is it because the document is incomplete or this method is not provided? Now how can I get the bleeding size of the current document. thank you!Examples code:
//set bleed
docPreset.documentBleedOffset = [10, 10 10,10];But there is no way to get the value that has been set
6 votes -
Scripting window keeps appearing and no way to remove it
Uninstalling/Reinstalling does not remove prompt. Starting appearing after most recent update to with the new ipad features. Going back to older version, the window doesn't appear.
6 votesThis issue is happening due to a security feature added in Illustrator to inform the user if any external application tries to execute a script in Illustrator.
Solution: Update your Logitech options app to the latest version – https://www.logitech.com/en-in/product/options
https://helpx.adobe.com/illustrator/kb/fix-scripting-error.html
We heard from some users that above solution is not working for them, we are investigating this issue. Meanwhile users can try the below workaround
Create a JSX file with the following content:
app.preferences.setBooleanPreference(“ShowExternalJSXWarning”, false);
Save the above JSX file. Now, go to File > Scripts > Other Script, and choose the newly saved jsx file.This will suppress the warning dialog and run the script.
-
ExtendScript gives && and || equal precedence
The below is from u/Ales-78 on Reddit:
"I found this while debugging something that made no sense, and because I once reported a "bug" to Adobe that turned out to be my own syntax error, I checked it on several versions before posting.
ExtendScript evaluates && and || at the same precedence level, left to right. So a || b && c is parsed as (a || b) && c instead of the correct a || (b && c). ECMAScript requires && to bind tighter.
Two lines, no document needed:
alert(true || false && false);
// prints "false", should…
5 votes -
Plugins Disappeared
after updating to version 25.1
the plugins in the "plugins folder"
don't Load up
when downgrade back to version 25.0.1
Its work fine5 votes -
Failure to create artboards when reading file with SDK in CC 2018
Issue occurs in CC 2018 when creating artboards during the GoFileFormat message handler in a plugin that registers its own file format.
In previous versions you could create artboards up to the size of the canvas using AIArtboard::SetPosition without any errors. In CC 2018 when you call AIArtboard::SetPosition it seems to compare the position to the result of AIDocument::GetDocumentMaxArtboardBounds and if it is outside of the maximum bounds it returns an error code. In CC 2018, the maximum art boards for a new document seem to be based on the /artboard setting in the preferences file, which in turn seems…
5 votes -
[ExtendScript] Cannot set TextRange.justification to value in ParagraphStyle
We cannot successfully set textFrame.textRange.justification to the value in the applied ParagraphStyle.
For example, if the text has [Normal Paragraph Style] applied, which for me has Justification.LEFT, then I cannot set that text to have Justification.LEFT in cases where the justification has been changed.
(Tested on MacOS 15.4.1 Adobe Illustrator 29.5.1, but this appears to be an old bug.)
Steps to reproduce:
1. Create new document
2. Run the below scriptExpected Result: all tests passed and no alert message appears.
Actual result: Failed to set textRange.justification to LEFT.
Script:
…(function () { var doc = app.activeDocument, textFrame4 votes -
Applescript—cannot save Illustrator file if embedding ICC profiles
This is a bug, as verified by this post (https://community.adobe.com/t5/illustrator-discussions/there-is-a-problem-with-saving-as-illustrator-using-applescript/m-p/15287552) and this post (https://community.adobe.com/t5/illustrator-discussions/applescript-cannot-embed-icc-profiles-in-illustrator-save-options/m-p/15032019#M429674). I cannot save an Illustrator file as part of an AppleScript if ICC profiles are being embedded. This is a problem because I can no longer use my Applescripts for creating versions of logo files.
The following code will fail with the error "Cannot get document 1". The error occurs when the
savecommand’swith optionsparameter is a record containing aembed icc profileproperty.save document 1 in filePath as Illustrator with options {embed icc profile:true}
I have verified that…4 votes -
[ExtendScript] Rasterizing group creates two rasterItems
- MacOS 15.2.
- Adobe Illustrator 29.1
- Open demo document (attached) and run script (below).
- Should create one RasterItem, but instead creates two.
Test Script (for use on attached test file):
…(function () { var doc = app.activeDocument; var item = doc.groupItems[0]; // Raster Options var rasterOpts = new RasterizeOptions; rasterOpts.resolution = 192; rasterOpts.antiAliasingMethod = AntiAliasingMethod.None; rasterOpts.backgroundBlack = false; rasterOpts.clippingMask = false; rasterOpts.colorModel = RasterizationColorModel.DEFAULTCOLORMODEL; rasterOpts.convertTextToOutlines = false; rasterOpts.includeLayers = false; rasterOpts.padding = 0; rasterOpts.transparency = false; rasterOpts.convertSpotColors = true; doc.rasterize(item, item.geometricBounds, rasterOpts); var count = doc.rasterItems.length; if (count > 1) alert('The rasterization created two images but should have created only one.');4 votes -
[ExtendScript] PageItem.resize doesn't scale Live Paint strokes
While scaling Live Paint object correctly scales strokes if done via the UI, it fails to scale strokes if done via the PageItem.resize method in the scripting API.
MacOS 15.0.1 Illustrator 29.0.
Steps to reproduce:
1. New document
2. Create a Live Paint object including stroked areas.
3. Select the Live Paint object.
4. Run the following script:var item = app.activeDocument.selection[0]; item.resize(200, 200, true, true, true, true);Expected result is that the Live Paint object's stroke widths would double. However they remain the same as before.
See this user post.
4 votes -
[ExtendScript] Cannot change `underline` value of some text ranges.
We cannot successfully set characterAttribute.underline to
falsein some textRanges.(MacOS 15.0 Adobe Illustrator 28.7.1)
Steps to reproduce:
1. New document
2. Make a text frame with contents "ab"
3. Set the "b" to a different fontStyle, eg. "italic"
4. Run the below script, and check the console output.Expected Result: all tests PASSED, meaning that the underline can be set to true and then to false successfully.
Actual result, test B on the "b" fails.
Script:
```
(function () {
…var doc = app.activeDocument, tf = doc.textFrames[0]; var results = ['Results:']; tf.textRanges[0].characterAttributes.underline = true results.push('textRanges[0] test A: ' +4 votes -
[ExtendScript] Line feed \u000A character assigned to text contents is converted to carriage return
MacOS 13.3.1, Adobe Illustrator 27.4.1
Also reported on Windows same version of Illustrator.Steps to reproduce.
To see problem, run this script
```
(function () {var doc = app.documents.add(); var tf1 = doc.textFrames.add(); tf1.position = [100, 100]; tf1.contents = 'Break\u000Ame.'; alert('Linefeed (10)\n charCode = ' + tf1.contents.charCodeAt(5)); var tf2 = doc.textFrames.add(); tf2.position = [200, 100]; tf2.contents = 'Break\u0003me.'; alert('End-of-text (3)\n charCode = ' + tf2.contents.charCodeAt(5));})();
```
I would expect the text on the left to have a line feed (u+000A) character, but it is converted to a carriage return (u+000D).
The text on the right is a workaround,…4 votes -
IUStringUnitsToAIReal doesn't recognize comma as decimal separator
std::string input_ = "1,5"; // From Adobe header: The string to convert, which uses the localized international utilities (IU) decimal separator.
AIReal n;
sAIUser->IUStringUnitsToAIReal(ai::UnicodeString(input_), &n);This function interprets the text "1,5" as "15" even when the locale is set to a country where the system uses a comma decimal separator. Related functions IUStringToAIReal recognizes the comma, though.
4 votes -
AIPaintStyleSuite not found
Trying to update a plugin to use the Illustrator 2020 SDK on Mac. Previously using the 2017 SDK. The SPBasicSuite AcquireSuite function fails to find the AIPaintStyleSuite when building with the 2020 SDK.
4 votes -
GetPresetSettings function doesn't work correctly in CC 2017 and later
In Illustrator CC 2017 (22.x) and CC 2018 (23.x) the AIDocumentList::GetPresetSettings function is broken. It still returns an error if the preset doesn't exist, but if the preset does exist, it returns 0, but doesn't fill in the AINewDocumentPreset structure.
4 votes -
[ExtendScript] never releases PathPoint objects so scripts slow down.
ExtendScript never releases PathPoint objects, so scripts slow down until Illustrator restarts
Versions: Illustrator Beta 31.0.0, macOS 26.7.1. Also reported in Illustrator 2026 on Windows (community thread).
Summary
When a script gets a path point (
pathItem.pathPoints[i]), ExtendScript creates aPathPointobject, plus aPathPointsobject for the collection and anArrayfor.anchor. None of these are ever released. As they build up, every later script in that engine gets slower, including scripts that never touch path points. Only quitting Illustrator clears them.Steps to reproduce
- Run the script below from File > Scripts in…
3 votes
- Don't see your idea?