My company sends PDF reports to clients from data we export from another program. I made a very simple batch export process in Adobe Illustrator by simply assigning variables to our PDF, exporting those variables to an XML file, and then using a python script to rewrite and copy the XML structure/variables from the CSV export data.
On loading the variables from an XML, this loads just fine. The problem comes when switching data sets, which we must do hundreds of times, even when macro/action batching "save a copy."
This message displays on each switch: "The current values have not been captured, and will be discarded upon switching data sets. Proceed?" Pressing "Yes" (or spacebar) "works" just fine; the data set doesn't just magically disappear like it seems to imply. However, when switching to check data accuracy visually, or just batching actions, it becomes very tedious.
I can't seem to find an option or preference to suppress these kinds of messages, which would be my first guess for a solution. Is there maybe an option or flag or parameter somewhere in the XML structure to tell it I don't care? Is there a workaround like a batch action or a "capture all"? Or any other possibility?
Answer
Are you using visibility or graph variables? How about different whitespace symbols or unusual glyph fonts? There are some "issues" which occur during the population of data into the placeholders, and fortunately the fix is available by using this function on your Illustrator document.
function cycleUpdateAllDatasets(doc){
for(var i = 0; i < doc.dataSets.length; i++){
var d = doc.dataSets[i];
d.display();
d.update();
};
};
The method is to display and update each dataset to make it 'ok' in the eyes of Illustrator. Whatever invisible changes Illustrator makes, the dataSet.update() command will rectify and hopefully send you on your way. You can play this .jsx script in bulk before you get on with your processing, but also you can play it during your processing on the active dataset right after it's populated (the insert menu command to insert a File > Scripts script into your action).
No comments:
Post a Comment