Reag/get ICC profile from .ai document with external application

New Here ,
Mar 06, 2021 Mar 06, 2021

Copy link to clipboard

Copied

Hi, I am looking for a way to read the information of the ICC profile of an embedded Adobe Illustrator file (.ai) with an external application. I can save with PDF compatibility which returns an ICC profile for each object separately. But imagine you had a blank document, assigned with e.g. a CMYK profile (ISOcoated.icc), no objects in the documents at all, then save .ai with PDF compatbility. Obviously there‘s no content, yet the file size is approx. the size of the embedded ICC profile. The PDF parser returns no ICC profile as no object is present. Is there a way to access .ai native content to get/read the embedded ICC profile externally? Thanks

TOPICS
How to, SDK

Views

85

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 2 Correct Answers

Most Valuable Participant , Mar 06, 2021 Mar 06, 2021
The real AI document is stored in proprietary format inside private objects of the PDF. The general PDF contents are an exported visual representation only. 

Likes

translate

Translate

Translate
Most Valuable Participant , Mar 08, 2021 Mar 08, 2021
Commentary, which probably doesn't help you a bit but may give insight into the problem.  "proprietary, undocumented and kept secret for any particular reason" Well, companies know that what you put in a file isn't actually secret, but here are some reasons why they don't document it, making a de facto secret. - it might use other information or systems that are licensed and to which the company cannot share the rights - you have to pay someone to document it, in a form suitable for the public -...

Likes

translate

Translate

Translate
New Here ,
Mar 06, 2021 Mar 06, 2021

Copy link to clipboard

Copied

Sorry, I meant to say:

"...I am looking for a way to read the information of the embedded ICC profile of an Adobe Illustrator file (.ai)..."

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Most Valuable Participant ,
Mar 06, 2021 Mar 06, 2021

Copy link to clipboard

Copied

The real AI document is stored in proprietary format inside private objects of the PDF. The general PDF contents are an exported visual representation only. 

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 07, 2021 Mar 07, 2021

Copy link to clipboard

Copied

Is there any procedure or description in e.g. the SDK that allows to access the proprietary format of the .ai file, specifically the name of the embedded ICC profile, then?

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Most Valuable Participant ,
Mar 08, 2021 Mar 08, 2021

Copy link to clipboard

Copied

"Proprietary" is generally taken to mean "secret and undocumented". However, I don't know what information you might find in the Illustrator SDK.

 

The information seems to be stored in a PieceInfo dictionary, you might find something there but remember it can change without notice between releases (a reason it's kept proprietary). But preflighting proprietary file formats is a common wish, and some companies spend their working lives picking over the bytes and bits to try and guess what the files mean.

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 08, 2021 Mar 08, 2021

Copy link to clipboard

Copied

Thanks, surely understood. If it's proprietary, undocumented and kept secret for any particular reason then one can only try to figure it out backwards. PS: I've found the ICC profile descriptor in Resources/XObject(Form)/... of an .ai file but that funnily only shows up if the .ai file has been saved without PDF compatibility. Will investigate a bit more and probably also will have a look at the Illu SDK. Thanks anyway!

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Most Valuable Participant ,
Mar 08, 2021 Mar 08, 2021

Copy link to clipboard

Copied

Commentary, which probably doesn't help you a bit but may give insight into the problem. 

"proprietary, undocumented and kept secret for any particular reason"

Well, companies know that what you put in a file isn't actually secret, but here are some reasons why they don't document it, making a de facto secret.

- it might use other information or systems that are licensed and to which the company cannot share the rights

- you have to pay someone to document it, in a form suitable for the public

- you have to assign time in all future projects to keep the public documentaton up to date

- an infrastructure could build up of other apps that use this information (like yours), and hence customers and even non-customers who are inconvenienced, upset or (even, potentially) litigious every time you make changes.

- reducing the chance to make changes may lock apps into a data model that is out of date and less efficient or effective than their rivals.

- it gives other companies the info they need to easily put code to import of the company's files into THEIR software, making business rivals stronger.

Sometimes Adobe have chosen the path that says sharing and widespread acceptance is the route to success, as in PostScript and PDF. 

Likes

translate

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines