InDesgin Script – Text und ParagraphStyle exportieren nach Excel


Ich habe ein kleines Script geschrieben, welches seitenweise die Paragraphen ausliest und den Text sowie den ParagraphStyle in eine csv-Datei schreibt, die in Excel geöffnet werden kann, um so den Text dorthin zu exportieren und später zu übersetzen und zu reimportieren mittels InDesign’s DataMerge. Es wird für jede Seite des Dokuments eine csv-Datei angelegt:

#target InDesign
$.writeln ("extract Paragraph Text");

var allPages= app.activeDocument.pages;
for (i=0; i<allPages.length; i++)
{
    $.writeln (allPages[i].name);
    var allPageTextframes= allPages[i].textFrames;
    var csvPath = app.activeDocument.filePath + "/page" + i + ".csv";
    $.writeln (csvPath);
    var csv = File (csvPath);
    csv.encoding = "CP1252"; //Encoding for Windows/Excel    
    csv.open ("w");
    for (j=0; j<allPageTextframes.length; j++)
    {
        var allPageTextframeParagraphs= allPageTextframes[j].paragraphs;
        for (k=0; k<allPageTextframeParagraphs.length; k++)
        {
            var text = allPageTextframeParagraphs[k].contents;
            var paragraphStyleName = allPageTextframeParagraphs[k].appliedParagraphStyle.name;
            $.writeln (text);
            $.writeln (paragraphStyleName);
            if(text != "")
            {
                    var zeile = paragraphStyleName + " " + j + k + ";" + text;
                    csv.writeln (zeile);
             }
         }
     }
}