Skip to content

Illustrator (Desktop) SDK/Scripting Issues

112 results found

  1. Transparency Mask

    There is no way to work with the transparency mask in the Script SDK. This is the least of the problems. But when creating scripts to modify objects with masks, developers expect masks to be modified along with the parent object. After all, we see the "Linked to Art" icon in the Transparency panel.

    But what we have all these years as script developers: resize(), position, translate() modify the object, and its mask remains as it was.

    I've counted about 10 of my own scripts that use similar commands. I also have a large collection of other developers' scripts, where…

    9 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. Drag-and-drop bug running scripts containing app.doScript()

    Watch the "drag-and-drop-bug.mp4" video, which demonstrates a specific but with the Adobe Illustrator's JS engine handling scripts which are dragged to different areas of the screen in different ways.

    In most cases, a drag-and-dropped script will work as intended. But for 10 years in CS6-CC 2023 versions there is a limited bug handling the script if dragged to the “wrong” area of the program window.

    If the script contains an action and a user drags it onto the document window, it may not work correctly. If the script selects objects one by one and applies an action to them, it…

    9 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. Adjusting one gradient causes changes to unrelated gradients on same document

    adjusting one gradient causes changes to unrelated gradients on same document.

    9 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. kAINamedStyleListChangedNotifier is not emitted when a Graphic Style is updated

    If you hold ALT and drag some art into a Graphic Style, it updates, but the notifier is not sent. This has been happening since at least the original CC. It used to work before that.

    9 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  C++ SDK  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. addDocumentNoUI methods argument not selectable.

    1.Your version of Adobe Illustrator
    Illustrator ver.21 or later.

    2.The steps you were taking when you experienced the issues
    When we run addDocumentNoUI method, we can set startupPreset.
    However, It always sets "Web" preset.

    3.Your expected result
    When we select "Art & Illustration" document open with appropriate preset.

    4.Your actual result
    All the time we got a document made with "Web" preset.

    Here is a sample code of NoUI scripting.

    var dc = app.documents.addDocumentNoUI("Art & Illustration");
    //add some objects
    dc.saveNoUI(File("~/Desktop/testNoUI.ai"));
    dc.closeNoUI();

    After run it and open in Illustrator, we will find it used Web preset.
    We want to choose appropriate…

    9 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    var dc = app.documents.addDocumentWithDialogOption(“Art & Illustration”, false);
    //add some objects
    dc.saveAs(File(”~/Desktop/testNoUI.ai“));
    dc.close(SaveOptions.DONOTSAVECHANGES);

    Above script works for creating, saving and close the document without UI. The document preset is localized, if you are using locale other than english, you should pass the localized name of preset to addDocumentWithDialogOption method.

  6. [Typo] Document.rearrangeArtboards() of Illustrator JavaScript Reference.pdf

    There is a typo in rearrangeArtboards in Illustrator JavaScript Scripting Reference.pdf. It cannot execute as per the document. Please correct it.

    I have checked and it was wrong from CS5 to current version (2022 v2 - Feb 2022).

    Expected Name:

    rearrangeArtboards

    Actual Name:

    rearrangeArboards ("t" is missing from Artboards)

    8 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. More notifiers for live effects

    Ai provides a live effect notifier that triggers when an object is scaled, but not when it’s moved. Same problem with rotating — the absence of these does not allow to recalculate effects properly, like one when an object with a shadow is rotated, and a user wants to rotate the shadow with the object (there is a quite popular request about this one already — https://illustrator.uservoice.com/forums/333657-illustrator-desktop-feature-requests/suggestions/32468149-effects-do-not-rotate-drop-shadow-or-scale-e-g)

    8 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  C++ SDK  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. kATEDocumentResourceChangedNotifier not sent when character/paragraph styles are changed

    According to the documentation for kATEDocumentResourceChangedNotifier, it is supposed to be "Sent when ATE document resources, such as named style, have changed."

    I have never found this to be true, in any version since the ATE was added. This has always been a serious pain point, because we build small previews of text styles and we have to rebuild them every time we open a UI that shows them, because we have no way of knowing if they have changed (or if they even still exist, or any have been added!).

    Since it's never been sent before, there can't be…

    8 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  C++ SDK  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. Activating artboard with a script does not update the Artboards panel

    If you click inside of an artboard with a mouse, it gets the 'active' flag and becomes selected in Artboards panel as well. So if you press Shift+O to pick Artboard Tool, you see its name and dimensions.
    However, if you use method setActiveArtboardIndex() — the artboard still gets the active black border, but the panel stays unrefreshed, and if you pick the tool you get the information about a different artboard.

    7 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Install new tools in toolbox by default

    When a user adds a new third-party plugin, its tools should be added to the toolbox, where users expect to find it, rather than hidden in the drawer, which many users don't even know about. Hiding new tools creates frustration for users and extra support hassle for developers.

    6 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  C++ SDK  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. app.selectTool('Adobe Intertwine Zone Marker Tool') does not work

    When I run the following script, the Adobe Intertwine Zone Marker Tool starts up and I can select the area where I want to change the overlap like the lasso tool. However, nothing happens after the selection.

    app.selectTool('Adobe Intertwine Zone Marker Tool')
    

    Expected Result

    The overlap of the selected area is changed.

    Actual Result

    The line will remain as if it was drawn with the lasso tool. The overlap is not changed.

    Enviroment

    • macOS 11.7
    • Illustrator 27.1.1
    6 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    An intended way of picking up the hidden Zone Marker tool via a script is to enter the Intertwine mode using these commands:

    app.executeMenuCommand('Partial Rearrange Make') — when an intertwine object is not created yet, and

    app.executeMenuCommand('Partial Rearrange Edit') — when the object already exists, as per comments by the OP.

  12. Isolate/Unisolate commands

    Commands:
    //menu Other Object\Isolate Selected Object
    app.executeMenuCommand('enterFocus');

    //menu Other Object\Exit Isolation Mode
    app.executeMenuCommand('exitFocus');

    Return error:
    an Illustrator error occurred: 1346458189 ('PARM').

    This applies not only to isolation, but also to some other commands.

    6 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Opacity Mask

    Transparency / Opacity Mask - In layers pallet page item names look different with masks (underline) and opacity masks (dashed). It would be great if you could add this to properties of the page item like mask: none, opacity mask or mask. Identifying these objects is even harder then Envelopes which can only be identified by identifying as plugin object. Worst case putting info in the tag propery would be better then nothing when cresating it. I do not believe a opacity mask can be identified through any form of SDK/Script which makes identifying raster images in the file impossible.…

    6 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. Executing Extendscript/Javascript from the C++ API

    As far as I know there is no possible way to execute an Extendscript via the C++ API.
    In InDesign we can do so by providing the script as a string and fetching simple output results.

    Our customers can customize our Plugins by providing their own script in our custom scripting language. Unfortunately our language does not cover all use cases and needs to be constantly expanded. With support for Extendscript/Javascript execution from the C++ API we could circumvent the problem and give the users a lot of flexibility and power.

    6 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  C++ SDK  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  15. CEP: Unique identifier for items and layers

    Please provide unique identifiers for all page items and layers via script.

    Right now it is not possible to save IDs of page items/layers in a variable or array and retrieve them at a later point in the script.

    At first I could not believe it that there are no IDs. This is total basic and should be a no-brainer and default.
    Thanks!

    P.S. Current workaround: set custom tag on items. This works only as long as the user is not duplicating an items. Than you have two items with the same tag and it is not unique anymore.
    Workaround…

    6 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  CEP  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  16. Control the angle, length of gradients and other

    ExtendScript does not allow you to control the length, angle, or other parameters of gradients. These are all read-only attributes. Script authors can only work with color stops.

    For example, to rotate a gradient, we have to use the rotate() method, which has another problem. The angle of such a gradient is not copied to another object with the Eyedropper Tool: https://medium.com/@aiscripts/gradient-rotation-bug-24d7a6f6038f

    The fillColor assignment commands (selection[1].fillColor = selection[0].fillColor) carry over the base gradient, losing other properties. This reduces the ability to automate gradients via ExtendScript.

    Also ignores other Uservoices:
    1) https://illustrator.uservoice.com/forums/908050-illustrator-desktop-sdk-scripting-issues/suggestions/44461230-adjusting-one-gradient-causes-changes-to-unrelated
    2) https://illustrator.uservoice.com/forums/908050-illustrator-desktop-sdk-scripting-issues/suggestions/40296880-erroneous-fillcolor-type-one-shapes-with-freeform
    3) https://illustrator.uservoice.com/forums/333657-illustrator-desktop-feature-requests/suggestions/38435974-gradient-swatch-includes-angle-and-position-pleas

    5 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. [Typo] ExportOptionsTIFF.IZWCompression of Illustrator JavaScript Reference.pdf

    There is a typo in ExportOptionsTIFF in Illustrator JavaScript Scripting Reference.pdf, which fails to specify whether or not LZW compression is used. Please correct it.

    I have checked and it was wrong from the CS6 version.

    Expected Name: lZWCompression (begins with a lowercase L)
    Actual Name: IZWCompression (begins with an uppercase i)

    The function name in the example is also wrong. exportFileToTIFF should be correct.

    Exporting to TIFF format
    
    // Exports current document to dest as a TIFF file with specified
    // options, dest contains the full path including the file name
    
    function exportFileToPSD (dest) { // <-- exportFileToTIFF
      if
    5 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  18. Wrong short-discription in omv.xml

    macOS10.14.7 / IllustratorCC 26.3.1

    In the following omv file, the shortdesc(short description) of each property of the "TextAntialias" class in lines 833 to 865 is identical to the one for the previous "TextType" class.
    (以下のomvファイル、833行目〜865行目の「TextAntialias」クラスの各プロパティのショートディスクリプションが一つ前のTextTypeのものと同一です。)

    /Library/Application Support/Adobe/Scripting Dictionaries CC/Illustrator 2022/omv.xml

    ...
    <classdef name="TextAntialias" enumeration="true">
    <shortdesc>The type of text antialiasing.</shortdesc>
    <elements type="class">
    <property name="NONE" rwaccess="readonly">
    <shortdesc>Text from a point.</shortdesc>
    <datatype>
    <type>int</type>
    <value>1</value>
    </datatype>
    </property>
    <property name="SHARP" rwaccess="readonly">
    <shortdesc>Text within an area.</shortdesc>
    <datatype>
    <type>int</type>
    <value>2</value>
    </datatype>
    </property>
    <property name="CRISP" rwaccess="readonly">
    <shortdesc>Text on a path.</shortdesc>
    <datatype>
    <type>int</type>
    <value>3</value>
    </datatype>
    </property>
    <property name="STRONG" rwaccess="readonly">
    <shortdesc>Text on a path.</shortdesc>
    <datatype>
    <type>int</type>
    <value>4</value>
    </datatype>
    </property>
    </elements>…

    5 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. Justification bug, cannot set 'center' in v24.2 using AppleScript

    Running a script to set the justification of text works perfectly for left and right, but no longer works for center. Putting the example script given in the latest Illustrator CC Scripting Guide, page 122, into a Script Editor visually compiles centre differently to left and right and only works if you remove or comment out the line justifying to center.

    5 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  AppleScript  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  20. Concerns about the future of CEP and UXP

    I've been reading through the new information about UXP and the announcement that it will be replacing CEP.

    If this happens it will likely mean the end of our current CEP extension, since the support provided in UXP does not cover our use case. To be specific we have problems with the following areas:

    1) Most critical UXP is "not a browser" and as such will only support a subset of HTML. Our extension relies on being able to run another web application within the browser control supplied by CEP, in an iframe window. While there is currently no list…

    5 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  CEP  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  • Don't see your idea?

Illustrator (Desktop) SDK/Scripting Issues

Categories

Feedback and Knowledge Base