Adobe 0046100128056 - InDesign - Mac Manual page 79

Javascript
Table of Contents

Advertisement

C
6: Text and Type
HAPTER
//If the imported text did not end with a return, enter a return
//to keep the stories from running together.
if(myCounter != myDocument.stories.length -1){
}
}
myNewStory.exportFile(ExportFormat.taggedText, File("/c/test.txt"));
myNewDocument.close(SaveOptions.no);
}
Do not assume that you are limited to exporting text using existing export filters. Because JavaScript can
write text files to disk, you can have your script traverse the text in a document and export it in any order
you like, using whatever text mark-up scheme you prefer. Here is a very simple example that shows how to
export InDesign text as HTML. (We omitted the
"Creating a text frame" on page
var myStory, myParagraph, myString, myTag, myStartTag;
var myEndTag, myTextStyleRange, myTable;
//Use the myStyleToTagMapping array to set up your paragraph style to tag mapping.
var myStyleToTagMapping = new Array;
//For each style to tag mapping, add a new item to the array.
myStyleToTagMapping.push(["body_text", "p"]);
myStyleToTagMapping.push(["heading1", "h1"]);
myStyleToTagMapping.push(["heading2", "h2"]);
myStyleToTagMapping.push(["heading3", "h3"]);
//End of style to tag mapping.
if(app.documents.length !=0){
if(app.documents.item(0).stories.length != 0){
//Open a new text file.
var myTextFile = File.saveDialog("Save HTML As", undefined);
//If the user clicked the Cancel button, the result is null.
if(myTextFile != null){
if(myNewStory.characters.item(-1).contents != "\r"){
myNewStory.insertionPoints.item(-1).contents = "\r";
}
if(myAddSeparator == true){
myNewStory.insertionPoints.item(-1).contents =
"----------------------------------------\r";
}
71, " or see the ExportHTML tutorial script.)
//Open the file with write access.
myTextFile.open("w");
//Iterate through the stories.
for(var myCounter = 0; myCounter < app.documents.item(0).stories.length;
myCounter ++){
myStory = app.documents.item(0).stories.item(myCounter);
for(var myParagraphCounter = 0; myParagraphCounter <
myStory.paragraphs.length; myParagraphCounter ++){
myParagraph = myStory.paragraphs.item(myParagraphCounter);
if(myParagraph.tables.length == 0){
if(myParagraph.textStyleRanges.length == 1){
//If the paragraph is a simple paragraph--no tables, no local
//formatting--then simply export the text of the pararaph with
//the appropriate tag.
myTag = myFindTag(myParagraph.appliedParagraphStyle.name,
myStyleToTagMapping);
//If the tag comes back empty, map it to the
//basic paragraph tag.
if(myTag == ""){
myTag = "p";
}
myStartTag = "<" + myTag + ">";
Exporting Text and Setting Text-Export Preferences 79
function from this listing; you can find it in
myGetBounds

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Indesign cs5

Table of Contents