Some useful Adobe Illustrator scripts
This code repository supports an Independent and Sovereign Ukraine.
Some useful Adobe Illustrator scripts
Hi Silly,
Your scripts are so cool to look at. Really way above my capabilities, but i look to scroll through them and see if i can learn from it. I noticed in a couple scripts you have different methods of embedding images. I was looking for something like this. I knew i saw used a couple times and only could remember 2 of you scipts or panels having.
What is the coding or desiphering for this, not sure how its called. I thought something like Binary or Hex. I noticed some parts still have readable text and was quite funny seeing them made with old app ImageReady
this is the code i mean
img_logo2 : ScriptUI.newImage("\u0089PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00d\x00\x00\x00-\b\x02\x00\x00\x00\u00D7\u00D7Y\u00A7"+
"\x00\x00\x00\x19tEXtSoftware\x00Adobe ImageReadyq\u00C9e<\x00\x00\x03\u00F3IDATx\u00DA\u00EC[\u00E9\u0091\u00EA0\fvv\u00A9\u00826"+
"\u00A0\u00A6P\x07e@\x1D\u0094\x01uPF\u009E\x06\r\x1A\u00AD$\u00CB\u00B2\u009Dpd\u009E~\u00EC\u0090\u00C4\u0087\u00A2\u00DB\u009F"+
"\u00B2\u00C34M\u00A9\u009En\u00B7\x1B\u00FC=\u009F\u00CFt\x07\x7F\u008F\u00E3\u00C8\u00EF\u00E3\u00A5\x1Es:\u009D\u00D2\x17\u00D2"+
"\u00D0,,\u0092\b\x17\u00D9\u00F5z\u00DD\u00EDv(\u00CA\u00FD~/\x16\u00C7\u00FB@0f\u00B5\u00C2\x12v\u00C4\u00A5\u00A3\t\r\x07\u00A6|"+
"\u00A9D\x1C\u00DAD\u00CC\u00C7\u0097\u008E .S4\u00B4\u0095\x0B\u00EBp8T\t\u00C8\u00B4\u00AF\u00B4>\u009A\x145\u00BF'L\u00BC>"+
"\b~Lo%\u00E0a\u0089e\u0093\u00DE\u00A6MF\x7F\x16}D\u00FAwI\n\u0095\u00BD\x04\x03?\u00E2\u00CD!\u0085\u00D5\u008A\t\u00C29\x0FL"+
"\u0094\u00F2\x1C\x027\x1F\u009Etx\u00D0\u00DB=\f\u00D8\x066\n\u00CC7\u0098\u00956%\u009A\u008E>\u00E8\u00BB!j~|R.\x1A\u00F4"+
"\u00F8`\u0083Y\u00E1\u00BB\u00FB\x13\u0093p\u009F\u0088\u00A4\u00CC\u009Dx\u00A4s\u00B6D\u009E\u00F8\"8Q\u00AF\u0086\u0084"+
"\u00BFqA\u00BAo^\u00EA\u0089zA\u00AEN\u00C1d\u009D\u00B0\u00E2f\u0095\u0093QQR\u00A6\u00B0DB\u00A0\x05\u00F9\u00CA8 \u00C7!M"+
"\u00E7\x03\u0084\u00B0\u009C\u0089\u00B9\u00A7\u00FAERm\x12$m\u00C7\u00DDSn\u00F9\x1C\u00AC5,b3\u00BD\x06\x1FF[\u0093}\x15m"+
"\u00843L\u00B3\u00C4%\x05\u0087+\u00A3^aUE\u00B1\u009Cq\u0089\u0080E\u00A6\u00E1\u0084Q!\u00AC\u00A2\u00A7\u008B\x01$\u008B"+
"\u009C\u008DG\u00DCp3K*\u0081-\u0083\u0095:\u009E\n\u00E8 \r\x13\u00CF\x0F\u00A2\x15\u0084\u00CE\u00E0&p)\u0092T|;\u00A7TnY\u00A1"+
"\u00A7\u00C2\u008A\u0087*\u00A7\b\u00E2*5\u009F\u008A\u0094R\u00CC\u00B6\u00A6\x1B\u009A\x01W[\u0096\u00BFr\u009A\u00A5v\u008F"+
"\u00CB\u008B\u00BB\x1E\u00C6\u0085\\(1\x03\u008D\x18 $\u00C2g\u00D1\u00FAf\u00F8\u00D3\u00DE\u008DA\u0080\"\u00B2\u00E9\u00EC"+
"\u00C9\u008C\u00BE3\x1E\u009E\"'\x04?s\u0091\u00B6M]\x165\u00CD\u00D5 \u00C6\u0098q\u008D\u00E7\x1F1`\u00D0\u0090SU\x11o2\u00E7"+
"\u0084\x03\u008CY\u00C0\x07\u00EE\u0082<\u0089\u00F1\u0084v \u00F7\u00F4\u00D4,\u00AF\u00FD\u00A74\x06\u00DFKhB\u00F3\u0089"+
"\u008Bd\u00F9\x0F*\x7F\u0089\u00F8\u00F5\u00E2\u00A3u?c\u00C9\u008F,\u00EB\u0090\u0097P\x7F3(b\u0097\x0E\u0098\u00DA{ -\u00B0"+
"\u00F9\u008F\u00C2\u00DAE<\u009A3$\u00F7{b\u00A7\x0E?\u0093R\u00CE\u0099E\u0091\u00DDV\u00D3\x7Ff\u00FC\u00EA\u008AY~"+
"\u0099\u00D7fe<a\u00AFF^\u00A9!@V\u009D\x13\u008B\x05\u00F7\u0097\u00B9a\u00FC\u00F4\u00DB\u0090\x04\u00D7d\\CU\u00CE2"+
"\u00BB>t\u00BC\u00C8\u00D5r\u0088\x1A\u00BF=3r\u00F0\u00BA\u008D\u0099MC\x02Fy\u00A1\u00C9D\u00CE\u00EEX\u00AF#\x7F&\u00DC"+
"\u00DE\u008C\"4\x102\u00DF\u00AE\u00B9Z\x1F\x11\u00E7\u00DB\u0090\u00B7?k\u0094\\\u00BD\u00F32?\u00D5(\u00F6Rn(\u008E\u0090"+
"\u00F1\u00B9`P4\u0092\u008EihMb)\u00FE\x15\u00850:\u00F1H\u009B\u00A43WD\u0092F\u00C8\u00A0!U\u00F1`\x1F\u009C\u00AE\u0081$"+
"\u008D\u008D\u00E40x\r(\u009BO9\b\u00E3\u00B0\u00D7cY\u00D5m(\x01\fE\x00e\x01\u00E0\t\fD\u0083p\u00E2\u00FD\u00F5\\\x1A\u00A0"+
"\u00A5\u00EC \u00FA3\b+nYf\u00BF+\u00D2\u00AC7\u00BB\x12\u00B9\u00B8\u00E9\u00E0Yf\x1BM\u00E0\u00F7##\u00D3\u00B8z\u0084"+
"\u00B5\u00E1\u00F8w1H\u00E9p\x00\x7F\u009D\x15\b\u00BD\u00D2O\u00F9\u00CB\u00F0\u00A8\u0084\u00BB\u00A0\\\x10\u009EoF\u00CD"+
"\u00A9\u00A6\u0099\u00F9D\u00EE7rs\u00DA\u00E6}\u009A\u009C%\u009A}\u00AA\\\u00FA#\u00C7\x11\u00F0f\u00EE<\u00A0-k\u00D1l\x18"+
"\x12VQ9BXN\x13?\u0087\u0091;!\u009C\u00B7\u00A0\u009D\u00DE\u009Fn\u00FC\u0089\u00F6\x17\u00BF\u0099\u00EB\fF:\u009E\u00E56\\U"+
"\u0097\u00C8\u0089\u00FA\u00BE\u0094\x1D\u00AD\u0088D\u00A9/\u00CD\u00E9Z\u00D0=5\u00E6 zl\u00EA\u00F1\u008F\x1C\u0083\u00A8"+
"<\n\x02\u00AB\x18\x07\u0086\u00D7H\u00B9\x06\u00E0\x1D\x1C\u00DD\u00B94\u00A7\x17?\u00EF\u00E9:9\u0090\x1Ej!fn\u00E1\u00D3J\u00A9"+
"\\\u00A3V\u00E13+\u0096\x14\u00D0\u00AFv\u0093\u00E3\u00F1x\u00BF\u00DF/\u0097\u00CBv\u00BB\u0085\x1F\u00F1O\u00D4V\u00F6\u00B9"+
"\u00AD\u00A6a\u00AE\u0085V/)\u00A0\u00DF\x19\u00D7Bc\x04J\u00FFi\u00A1/\u0090\u00BE\t)}e\u00C3\x0EO0\u00DF\u00FB\u00BF;\u00FF\x04"+
"\x18\x00\u008E\x12\u00A4D\u00A8xh\u00C0\x00\x00\x00\x00IEND\u00AEB`\u0082")
};```
I want to start off saying, I absolutely love your script. You have made Adobe Illustrator's Variables function a usable feature. I just discovered your script a few weeks ago, by watching a tutorial video on YouTube.
So If I am doing something wrong, please say so.
The issue that I am having, only exists when I import variables for "#visibility" of objects. The script works perfectly in every way, except for capture of the last Record/Data Set. This does not seem to matter how many "#visibility" Records/Data Sets are being imported. The variables for that set and all sets are imported, only the last Record/Data Set does not get captured. I can fix this pretty easily, being as the variables were already imported I can set up the visibility of the objects and just click capture Data Set and rename it accordingly. However, I would absolutely love it if you can fix this bit of automation for me.
I am using the "#visibility" functions with a Unicode.txt file created from Excel 2010. The "Use Headers" and "Transpose Data" check boxes are checked. The character I am using for the visibility switches is "x". All other script presets are kept at default.
I have not had any problems with the import of text into text objects. That portion of the script seems to work perfectly for all Records/Data Sets. This even works with Unicode text, thank you for that by the way. The only problems that I have with the "@image" seems to be due with files named with Unicode characters, and that seems to be an Adobe problem, not a problem with your script, from what I can tell. I have not yet had the opportunity to test out the charts and graphs.
The version of Adobe Illustrator that I am using is Adobe Illustrator CC 2015.3.1 v20.1.0 (64-bit) This is the newest version of Illustrator CC to my knowledge. I have tried your script on older builds of Ai CC 2015 with the same result.
Thank you again, for this script!
Hi,
I'd like to know if this is an option and how to do it.
I have a lot of data sometimes numbers are the same and its hard for me to find every numbers that repeat.
Thanks!
Running Recolor seems to fail here with error TypeError: undefined is not an object
https://github.com/Silly-V/Adobe-Illustrator/blob/master/Dataset%20Processing/Recolor.jsx#L241
Hi there,
i just tried to use the Variable Importer 8.2.3
and wanted to overwrite given variable objects / variable text fields.
But instead of overwrite the variables in the objects, it eletes every variable and every binding and then adding the new variables but without a binding.
How can i use the Auto Binding function properly, sothat our bindings are not being deleted?
Thank you
Ive got this error that turns all the dataset names in Record1, Record2, Record3... Somehow is related to the number of rows in my CSV file. Ive tried with 400, 200, and 150 rows and all them get this alert. With 120 rows i´ve had no problems and all my dataset names where displayed correctly.
Is there anyway i can fix this issue?
Thanks in advnace and congratulations for such an usefull script!
Hello Vasily, I hope you are well.
Variable Importer has been my backbone for about a year and a half now - what an amazing script!
I have an issue right now that I've never seen before, and I'm hoping you will have some insight into what may be happening. I've recorded a Loom video to show it a little more easily than writing a description, but here is the summary:
When I import multiple datasets, all linked images are placed in the bottom-most layer that has a variable element inside it, rather than where they are assigned prior to import. They are also placed aligned to each other off of any artboards, just out in space.
I hope that you will have a few minutes to see my video and see if it looks familiar to you.
If you'd like me to provide my Excel and Illustrator files, I can do that.
Thank you!
Andrew Mason
Loom Video:
https://www.loom.com/share/7e1beb1e1c894706b40749d0930be37b
Hi,
as part of an automation, i'd like to start Illustrator, open an .ai-File and load the Variables automatically (with standard importsettings).
Right now, a naive Windows-MacroRecorder Script is doing this, but not properly and professional. Is there a way in Illustrator to call a file, open script and load .csv-file in one step? Maybe to write another script, that is calling this script with the right information?
Maybe this feature could be interesting for all?
Illustrator CC2017 for mac crashes when importing variables
I just used your script and has worked wonders in my tasks. But as I was working on it yesterday I stumbled upon an issue. Whenever I upload a new variable library the dataset names will be set to default "Data Set 1" and so on. The first time I imported the script, I clearly remembered that I already set the format for the dataset names that I need but when I load a new library? It resets.
Is there a way to solve this issue? Am I missing a procedure or something? Your response on this would be of great help. Thanks in advance.
Although none missing in the 'test'
it seems to find only 7/24 images, however they are there. Some of which have already been referenced previously.
Hi there,
in some cases with illustrator files greater than 70 MB,
the import script takes really long time (>5min), after clicking on import.
Has it something to do with the complexity of the design and the number of paths?
Illustrator takes about 2500 MB RAM. It has something to do with autobinding, if i disable it, it works quickly without autobind..
If it is to complex, i would like to only autobind specific layers, or to exclude layers.
How is this possible in code?
(If i run test --> Art Bindings --> Refresh test, it takes very long, too. But my csv-file has no art bindings!)
First of all, thanks a lot for the great script. It's amazing!!
Is there any chance to have a no break option in setting?
unfortunately illustrator does not support standard Non-breaking space (NBSP) in Unicode unlike InDesign and you have to manually set it from the character panel menu.
so every time I want to set part of my text to be always in the same line, I have to do it manually from there.
it would be nice to have feature to mark part of a text like: there is a /nb/flower garden/nb/ in the city
and script can set the "flower garden" to no-break automatically.
Hy Silly-V,
I tried to use your script which is very useful so thanks for that, but unfortunately the "auto bind by name" function doesn't work for me. As you can see my CSV is loaded without errors and my objects are named as the headlines. Using a mac with the newest version of Illustrator.
Thank you in advance.
Pawel
When I try to import my variable file I get this error:
My variable names should be fine. When i split my file into multiple ones, it works. I have no idea what is causing the problem. I can't reproduce the problem with my large sample file. See attachment.
Working:
Not Working:
the dataset that I set is
0922.9123.0001
0922.9123.0002
0922.9123.0003
when export to PNG file name is incomplete, becomes
0922.9123.0001.png
0922.png
0922.png
at the time, finally only 2 were png files namely
0922.9123.0001.png
0922.png
this happens because there is the same file name.
how to solve the problem of naming this dataset so that it is automatically replaced, for example point (.) to underscore (_)?
VariableImporter.jsx 8.2.4:
Settings file successfully saved in '/d/Documents/VariableImporter/VariableImporter_SETTINGS.json'
but .json file is 0 bytes, resulting in a crash on next run. Making it valid JSON by inserting {}
fixes the crash.
I just want to specify Options > Dataset Names: myfieldfromcsv
instead of the default Record-INC
.
Could you please also upload to the repo a sample VariableImporter_SETTINGS.json
? I can't fully figure out the required structure from the code.
Is there anyway it can be set to import json data instead of csv or xml?
Just wanted to ask, if there's a way to add back the option of "variable name "in the data set name assignment. It was a really useful feature in the legacy version and it seems to be missing in the most recent one.
First of all, thanks a million for this script. It's amazing!! 👍
I'm using Variable Importer version 8.2.4 with Illustrator CC 2015.
Everything works as expected except for csv files that contain names with special characters (é ó)
For example:
Lyriénne becomes Lyriénne
Falcón becomes Falcón
I noticed if I put these names at the top of the csv, it works fine,
If they're somewhere in between a csv file with 100 names it fails.
If they're at the end of a csv file with 100 names it also fails.
Any help would be highly appreciated.
when i run the variable importer script and link database, all my vartical text gets changed to horizontal? Can you use variableimporter and apply to vertcal text? Please help?
When using a batch action to "Export As...", the "Dataset Names" aren't appended to the filenames. This results in the same file being overwritten again and again.
Using "Save a Copy..." batch action works as expected. I need to export as bitmap though.
Illustrator CC 2018 and Variable Importer 8.1.10
When I import a CSV the window does not update with Variable names until I click Transpose Data, then a message appears and when I uncheck Transpose Data the wind is correct.
Selecting Options, File Paths, Presets or Test does nothing.
Import Variables works but I cannot set any options.
Illustrator 2015.2.1 Release 19.2.1.
Hi. Is it possible to force line break in area type text? If yes, what I have to do? Could you provide me with a sample?
According to this documentation it should work...but I can't get it to work.
https://prepression.blogspot.com/2015/04/illustrator-variableimporter-script-tutorial-5.html
Variables are not shown while assigning value to data set.
Used the script successfully a couple weeks ago. Now, none of my data source CSV files are recognized by the script as openable -- all are greyed out. The 'Sample Data 1.csv' file does work for some reason.
After selecting the Choose CSV file, the script and Illustrator freezes and stops responding.
My AI template contains multiple artboards with multiple objects with the same names (see screenshot for more clarity). My hope was to use the script to import variables and have them apply to all of the instances of the objects. If this is not possible, might there be a workaround that is not occurring to me?
Thank you for all of your hard work with this script! I'm hoping I can get it to apply to my situation.
Hi,
I'm new at trying out the script on a 22.01 Illustrator version and after many experiments I'm now stuck.
I keep getting this message:
Proper XML Syntax isn't followed by some variable name(s)
image-001;image-tag-001;comment-001;comment-tag-001;@image-002;image-tag-002;comment-002;comment-tag-002;@image-003;image-tag-003;comment-003;comment-tag-003
Fact is, all variable names seem to be OK and it's still not working.
What am I overlooking?
Thanks for any tips!
Hello!
I am a big fan of the variable importer script. There seem to be issues running in the latest version of illustrator 2021 as well as the x.01 version. When I installed 2020 and ran it, it worked as expected.
symptoms are that illustrator crashes when the script is open. It takes a few seconds, and happens for me when switching to the testing panel before import.
Prepended Image paths work on some Windows systems but not on some others.
Greetings
Being a novice to Adobe Illustrator and GitHub, I hope someone can help me out.
I used the Adobe-Illustrator/Variable Importer/VariableImporter.jsx file about two weeks ago once and it worked great!
I had to reinstall Adobe Illustrator today CC on Windows 10 and download the VariableImporter file on my computer.
After many hours my objects are still not being recognized by the script. I’ve installed and uninstalled both Illustrator and the script. Any ideas will be greatly appreciated.
Thank you!
My Illustrator file has three objects: product, state, and image (it’s a linked image file)
My CSV file has the following header columns: product, state, and @image
My variables are: product, state and image and are recognized at the import stage.
Options and Binding by Name Set
Ran the Tests
Dataset Names found (32) Good
Image Files found (32) Good
Graph files N/A
After import, Illustrator recognizes datasets and variables but not objects
Hi. For the auto binding we use the note field. After an import the note gets cleared for referenced images. Text fields survive. This is quite annoying, because I have to set everything again with every test.
Am I doing something wrong, is it a mistake or is there no other way?
This script is essentially non-functional within Illustrator Version 25. At least on Mac OS Big Sur (11.2.3). Absolutely loved using this in older version of Illustrator. Just wondering if this script is still being kept up to date. If so I would be very interested in helping troubleshoot and resolve the issues to get a version working in the aforementioned environment. Is there somewhere I can send Illustrator crash reports? Thanks for your incredible work on this script, look forward to hearing from you.
Hi,
I am using this on CC 21.0.2, it crashes the moment I press the 'Import Variables' button and Adobe stops responding.
It works when I delete all the images from the artboards, is there a restriction in terms of image sizes that causes this to crash?
Many thanks
Hi there,
im using the Illustrator Importscript and added Image-Variables.
I noticed that if an Image-File is not found, because of missing file,
the script is aborting, right after the success-Message.
(Right after I get a message, that
"Variable Data Imported",
Your variable data has been imported. It contains....".)
But after clicking on "OK"-Button, there is no Auto-Binding of the other Variables.
Is this a Bug? Normaly it should Bind the imported Variables.
Other Variables are imported within this missing image file, but not binded.
I have created some illustrator template files (.ait) placed in my local D drive (path),
Ex: 00_Helvetica_27 x 40, 00_Helvetica_28 x 47 (and Many)
once I run the script open that popup template file (attached i create the screenshot) window and select what file i need then hit OK open that file.
Adobe Illustrator 2015.3.1 Release
20.1.0
Error Message:
Error 60: Not well-formed (invalid token).
Line 631:
->
Is there a way to have the fonts outlined when batching to several EPS files when using the Variablemporter. I have numbering job and need the outputed files to have fonts outlined
Hi there,
as i saw in your other script, there is a possibility to import colors to illustrator to fill in.
Would it be possible to simply add this functionality inside this importer-script?
Thank you
Hi! I haven't used the script yet, it just stops working whenever I change the Options for assigning names to the data sets.
It would be great if there was a solution to this. Working with data sets on Photoshop is easy and it will be better if Illustrator had the same feature
https://drive.google.com/file/d/1JTHTXvpmcO_0ze9yXtmqymmFcSIomOBV/view?usp=sharing
I have uploaded the screen recording here!
I don't even have to click IMPORT DATA, as soon as I assign them and click ok, my AI crashes.
Edit: I just had to update Illus. to the latest ver.!
Trying to use the imported script and can't get past the changing option for the dataset name, Ai crashes as soon as I click any other tab or run the script.
Greetings -- It seems that the new update to Illustrator breaks Variable Importer. Now when I import and cycle through the CSV data import, it doesn't bring in any data.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.