Illustrator (Desktop) SDK/Scripting Issues
104 results found
-
check a keyboard key state in SDK
I often need a way to check if a specific keyboard key is currently pressed. For example, while a tool is being dragged, allow users to press the 'W' or 'E' key as they would a modifier like Shift or Alt/Option.
2 votes -
Change Adobe PDF settings without creating a PDF file
Does anyone know if there is a way to change Adobe PDF settings without saving the current file into a PDF file? More specifically, is there a way to turn on/off the "Preserve Illustrator Editing Capabilities" option using C++ SDK?
1 vote -
weird unicode file names in CEP panel scripts
Files with unicode names should report correctly in the documentAfterActivate and documentAfterSave events.
I just noticed that there are not only strange sequences of escaped and unescaped characters, but they can even differt between these two events.
A € sign produces 0x80 in the activate event and %e2 0x82 %ac in the save event1 vote -
Tracing bugs in scripts
Take a look at tracing-palette-bug.mp4. I am assuming that for the tracingColorTypeValue attribute, the TracingColorType.TRACINGFULLCOLOR and TracingColorType.TRACINGLIMITEDCOLOR keys work in reverse. And we can't set the palette color limits correctly.
Look at tracing-preset-bug.mp4. The script should load the default settings for tracing. But what we see, again like in the previous video, we have problems with the number of colors for the Palette. This could be tolerated when in CC 2019 the result after the script was like manually selecting a preset, but in CC 2023 and this is broken and users can't trust the automation of tracing.
I think…
10 votes -
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 -
[SDK Feature Request] Annotator option to draw selection annotation last.
There is no option to draw the selection annotation last. Filled shapes and image annotations always block the selection annotation. See images for what i mean.
2 votes -
how can i call these functions in AI via script?
-I would like to open a Multipage PDF with settings set to open "all pages" and "import pages as links".
If the pdf has only one page import it also as a link (if possible do it)Import an Illustrator *.ai file Multi-layouts by importing them as links across multiple layouts.
Set flattener presets:
preset name
various parameters...
Select all (Select / All)
Run the command: Object / convert transparency / Previously saved preset / OK
I saw among the commands that there is an openOptionsFreeHand could I create a script that opens the freehand files for me?
How could…
1 vote -
settings raster effects value visible main screen
I need to view somewhere in the Illustrator interface, the value set in the "raster effects settings" panel.
Is there a scripted way to implement this?
I've created actions that set this value to 72ppi / 300ppi so that I can change it when the document becomes heavy and unmanageable (thanks to using only 1 CPU CORE, thanks Adobe ❤).
The problem is that if I save the file, I will probably save it at 72ppi, but for printing the effects are poor and you have to set them to 300ppi.
So having the value always visible on the screen,…2 votes -
exportFile doesn't work with NoUI document
trying to create a "NoUI" document and export as SVG like this:
opendoc = app.documents.addDocumentNoUI();
opendoc.exportFile(file, ExportType.SVG);I get the attached error in AI
I can't think of any other way to export an SVG via script. Obviously there are scripting things that don't work with NoUI documents, but it seems like this one should. Am I doing something wrong?
2 votes -
[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 -
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 -
AppleScript can't get character properties (ver26.4.1, ver26.5)
tell character 1
properties
endver26.3.1 get properties
but, ver26.4.1, ver26.5 cant't get properties1 vote -
Illustrator 2022 (26.5.0) listStyle scripting issues
Starting with Illustrator 2022 (26.4.1), the ability to create bulleted and numbered lists has been implemented. Text to which lists are applied can be obtained in ExtendScript or AppleScript by using the listStyle property.
However, normal text that is not bulleted and numbered lists (hereinafter called "normal text") has no listStyle assigned to it, and referencing it causes an error. The following problem occurs.
Issue 1: ExtendScript and AppleScript cannot directly change lists to normal text
Expected state
For example, the following script (ExtendScript) can change a paragraph to normal text.
…var doc = app.documents[0] ; var targetParagraph = doc.selection[0].paragraphs[0]
11 votes -
variables.removeAll(); does not work
When I execute variables.removeAll();. error occurred: 1346458189 ('PARM').
On the other hand, dataSets.removeAll() works.1 vote -
ExtendScript Debugger 2.0.3 for VSCode fails on "doScript" method
When a script containing "doScript" method is run from VSCode to AI 2022 using any version of ExtendScript Debugger 2.x it locks up Ai 2022 requiring a force quit. VSCode must also be reloaded before any debugging can continue.
Rolling ExtendScript Debugger back to v1.1.2 eliminates the failure at the expense of the more advanced features of v2.x.
1 vote -
Variable font support in scripts
There doesn't seem to be any way to use variable fonts in scripts. There is an undocumented property TextFont.axisVector, but it is read-only. So there is no way to adjust the axes of a variable font via script, even though Illustrator has supported variable fonts for many years now.
Relevant thread:
https://community.adobe.com/t5/illustrator-discussions/scripting-variable-fonts-in-illustrator/td-p/98345144 votes -
[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 -
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 -
Please update "Planet X" in backend to "Live Paint"
Actions read from API are named "Planet X".
In AI menu, they are "Live Paint"Additionally, there is one typo: "Marge Planet X" = "Merge Live Paint"
When Loupedeck reads the actions from API, they appear with outdated names in Loupedeck UI.
3 votes -
46 votes
- Don't see your idea?