Reply To: ExportAllStories Modified to Include Page Number

Home Page / Forums / General InDesign Topics (CLOSED) / ExportAllStories Modified to Include Page Number / Reply To: ExportAllStories Modified to Include Page Number

#50909
Joe C
Member

Full script:

main();
function main(){
    //Make certain that user interaction (display of dialogs, etc.) is turned on.
    app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
    if(app.documents.length != 0){
        if (app.activeDocument.stories.length != 0){
            myDisplayDialog();
        }
        else{
            alert(“The document does not contain any text. Please open a document containing text and try again.”);
        }
    }
    else{
        alert(“No documents are open. Please open a document and try again.”);
    }
}
var myDoc = app.documents[0];
if (myDoc.saved == false)
{
    alert(“Error.\rYou must first save your document.”);
    exit();
}
var myDoc = app.documents[0];
if (myDoc.saved == false)
{
    alert(“Error.\rYou must first save your document.”);
    exit();
}
function myDisplayDialog(){
    with(myDialog = app.dialogs.add({name:”ExportAllStories”})){
        //Add a dialog column.
        myDialogColumn = dialogColumns.add()   
        with(myDialogColumn){
            with(borderPanels.add()){
                staticTexts.add({staticLabel:”Export as:”});
                with(myExportFormatButtons = radiobuttonGroups.add()){
                    radiobuttonControls.add({staticLabel:”Text Only”, checkedState:true});
                    radiobuttonControls.add({staticLabel:”RTF”});
                    radiobuttonControls.add({staticLabel:”InDesign Tagged Text”});
                }
            }
        }
        myReturn = myDialog.show();
        if (myReturn == true){
            //Get the values from the dialog box.
            myExportFormat = myExportFormatButtons.selectedButton;
            myDialog.destroy;
            myFolder= Folder.selectDialog (“Choose a Folder”);
            if((myFolder != null)&&(app.activeDocument.stories.length !=0)){
                myExportAllStories(myExportFormat, myFolder);
            }
        }
        else{
            myDialog.destroy();s
        }
    }
}
//myExportStories function takes care of exporting the stories.
//myExportFormat is a number from 0-2, where 0 = text only, 1 = rtf, and 3 = tagged text.
//myFolder is a reference to the folder in which you want to save your files.
function myExportAllStories(myExportFormat, myFolder){
    for(myCounter = 0; myCounter < app.activeDocument.stories.length; myCounter++){
        myStory = app.activeDocument.stories.item(myCounter);
        myID = myStory.id;
        myFrame = app.activeDocument.pageItems.item(myCounter);
        myPage = myFrame.parent.constructor.name;
                if (myPage == “Page”) 
                            myPage = myFrame.parent.name;

                           

        switch(myExportFormat){
            case 0:
                myFormat = ExportFormat.textType;
                myExtension = “.txt”
                break;
            case 1:
                myFormat = ExportFormat.RTF;
                myExtension = “.rtf”
                break;
            case 2:
                myFormat = ExportFormat.taggedText;
                myExtension = “.txt”
                break;
        }
        myFileName =”Pg” + myPage + “StoryID” + myID +  myExtension;
        myFilePath = myFolder + “/” + myFileName;
        myFile = new File(myFilePath);
        myStory.exportFile(myFormat, myFile);
    }
}

This article was last modified on December 1, 2009

Comments (0)

Loading comments...