Copy link to clipboard
Copied
Hi
IĀ“m using Illustrator CS6.
I have some AI and EPS files without embed ICC profiles.
IĀ“m trying to write a JavaScript that opens each document, assign the working ICC profile then save and close.
Have already done everything about opening and closing. ItĀ“s perfect.
The problem is the embeding ICC profile. Reading Illustrator JavaScript reference I did not find any method I could use to assign an ICC profile to the activeDocument.
Can you confirm itĀ“s really not possible? (to assign an ICC profile to the opened topmost document)
Thank you a lot
Gustavo.
Copy link to clipboard
Copied
In AI you do this with your color management settings and save the file with embedded profileā¦ eps has no profile so convert to ai
Copy link to clipboard
Copied
Hi Muppet
Yes...this is the real problem. The intention is really to open EPS files and save to AI with embed profile.
The problem is that original EPS files does not come with an ICC profile. So if I open this file then save as AI (even setting embedICCProfile = true for the IllustratorSavingOptions object) the AI file wont have a profile.
I set my Color Management Polices to Convert to Profile...but Illustrator wont convert anything since the original EPS does not come with one profile.
Am I missing anything?
Thank you a lot
Gustavo.
Copy link to clipboard
Copied
Do you have CMS set to "Convert to Working Space" for both RGB & CMYKā¦ This should convert to profile on openingā¦ You should then be able to include in your save optsā¦
Copy link to clipboard
Copied
Hi Muppet
Yes the polices work for files that originally has an embed profile. But considering EPS without a profile, it opens in Illustrator as "untagged RGB" or "untagged CMYK"...so the ended AI file wont have a profile!
Will make some other tests here. Altought a little crazy, I found a solution working this way:
1. After opening the EPS, I made a function to unlock all layers and sublayers.
2. Another function to unlock all pageItems then select it (so All pageItems are selected).
3. Used app.copy();
4. Added a new blank document that already comes with the working profile.
5. Used app.paste(); to paste in the new document.
6. Used the method to fit the artboard to the selection
7. Saved as AI file
8. Remove the EPS file using File.remove();
It worked and got what I was expected to have as result. However some EPS had a lot of element..then it tooks a long time to select everything and copy A little crazy but solved my problem hahaha
Best Regards
Gustavo.
Copy link to clipboard
Copied
Set Layer.hasSelectedArtwork = true; will select all pageItems whether locked or not! So step 2 is not need.
Copy link to clipboard
Copied
Wow
Thank you for the tip moluapple. Have not think this way
Thank you a lot
Best Regards
Gustavo
Copy link to clipboard
Copied
Hi Muppet
No problem. You help me a lot. About the EPSs you reached what I got in my tests too haha
Best Regards
Gustavo.
Copy link to clipboard
Copied
It would appear I misinformed youā¦ ooops I ran some tests here and can't get it to workā¦ I must admit I swapped over from *.eps to *.ai with pdf compatability some years ago which makes me suspect I did this with AppleScriptā¦ Sorry about thatā¦