Copy link to clipboard
Copied
Hi Guys
I am wanting to export multiple pages of a INDD file to JPG and name the files based on a caption generated from the image on each page. (the caption appears in the slug area. Previously we have been doing this manually. We do Team and Portrait Photography, there is the option to use 'Sports Photo Automation' but this would leave me with much larger file sizes. I have seen a couple of posts relating to this but they don't seem to be specific enough and i am no scripter.
Thanks for any advice, apologies if this has been answered before.
if (app.documents.length != 0){
var myDoc = app.activeDocument;
MakeJPEGfile();
} else {
alert("Please open a document and try again.");
}
function myPS() {
try {
return myDoc.selection[0].appliedParagraphStyle;
} catch (e) {
alert("Place cursor to text with paragraph style for filenames");
exit();
}
}
function MakeJPEGfile() {
app.jpegExportPreferences.jpegQuality = JPEGOptionsQuality.high;
app.jpegExportPreferences.exportResolution = 72;
app.jpegExportPreferences.jpegExportRange = ExportRangeOrAllPages.exportR
...Copy link to clipboard
Copied
Hi Darrell,
How are the captions generated for the image, is there only a single image on a page?
-Manan
Copy link to clipboard
Copied
Hi Darrell,
if the caption is made with InDesign's Caption function it might be that the image's container frame is grouped with the text frame that holds the caption text.
To get the group you could access the allGraphics array of a page or you could follow a specific link in the Links collection and climb the parent tree until you find a group. Then check for the contents of a text frame that is part of the group.
Regards,
Uwe
Copy link to clipboard
Copied
Hi Guys
Thansk for your consideration
I found a script here
https://indesignsecrets.com/topic/export-pages-to-jpg-with-custom-filenames
The PNG script works fine (doesn't name files though) but the JPG one seems to work (as it takes time to run) but I can't find the output?
My Captions are not grouped to the image, I will make the text style colour transparent once its up and running correctly
Its a 60 poage document but I will have to do thousands of these over the year so want to streamline the process as much as possible
Copy link to clipboard
Copied
This script seems to run when I use the original destination and I cant find the files. When I use the commented out line with a destination of c:\output it doesn't run. I am new to this can anyone advise me of the correct syntax to chose a destination?
Copy link to clipboard
Copied
if (app.documents.length != 0){
var myDoc = app.activeDocument;
MakeJPEGfile();
} else {
alert("Please open a document and try again.");
}
function myPS() {
try {
return myDoc.selection[0].appliedParagraphStyle;
} catch (e) {
alert("Place cursor to text with paragraph style for filenames");
exit();
}
}
function MakeJPEGfile() {
app.jpegExportPreferences.jpegQuality = JPEGOptionsQuality.high;
app.jpegExportPreferences.exportResolution = 72;
app.jpegExportPreferences.jpegExportRange = ExportRangeOrAllPages.exportRange;
app.findGrepPreferences = null;
app.findGrepPreferences.appliedParagraphStyle = myPS();
var f = myDoc.findGrep();
for (var myCounter = 0; myCounter < f.length; myCounter++) {
try {
var curPage = f[myCounter].parentTextFrames[0].parentPage;
if (curPage.appliedSection.name != "") {
curPage.appliedSection.name = "";
}
var objName = f[myCounter].contents.replace(/ /g,"_").toLowerCase();
app.jpegExportPreferences.pageString = curPage.name;
//var myFilePath = "~/C:\output/" + myPageName + ".jpg";
var myFilePath = myDoc.filePath + "/" + objName + ".jpg"; //export to a folder of the current document
var myFile = new File(myFilePath);
myDoc.exportFile(ExportFormat.jpg, myFile, false);
} catch(e) {
//pasteboard?
}
}
}
Copy link to clipboard
Copied
This has finally started working, it may have something to do with a non printing layer. At least the files are now appearing ton the same destination as the indesign file. any hints on redirecting would be great
Copy link to clipboard
Copied
This works like a charm! Thanks! : )
Now if it only if it could export PDFs ... : )
Copy link to clipboard
Copied
@darrellpones - The lovely script you posted seems to no longer work. Ran into this issue. Any idea how to fix it?
Copy link to clipboard
Copied
Will check on this when back in the office
Copy link to clipboard
Copied
Hi Phillip
I just had to run a job here - still working at this end. I did have them stop at one stage for a brieft period when Indesign was unable to exdport jpgs between updates. The text you have your cursor flashing in does have to have a paragraph style applied to it. To Answer an earlier query. The text I am using - the filename - has been data merged into the doc I have not tied 'a photo caption'. Just the image name without the '.jpg' extension.
Cheers
Darrell
Copy link to clipboard
Copied
Well, wow - that's embarrassing. The text does have a paragraphstyle, but it seems I had forgotten that I had to double click/activate the textbox and not just click on it once/select it before running the script. Thanks for your time/reply. Much obliged! : )
Copy link to clipboard
Copied
Hi Darrell, I get the same error message as Phillip above when I click the text box only once. But when I double click the text box and I run the script, it just does nothing. Do you know what I could be doing wrong? I don't do scripting at all sorry but I'm desperate so I dont have to rename 500 jpgs and just want to use a field from my data merge file to name them. I have place this on the artboard, given it a unique paragraph style, and made it non-printing. Is that correct?
Copy link to clipboard
Copied
Still working here. You need to have a flashing text cursor in the text, and the text has to have a unique text style applied to it. For example 'filename export style' (it doesn't have to be a specifc style name). I assume if you have used for example Head 2 style elsewhere on the page the scripr would get confused?