Forenindex » Programme » Print/Bildbearbeitung » Adobe InDesign Skriptwerkstatt » CS5: Absatzformat und nächsts Format auf kompletten Textrahmen anwenden

CS5: Absatzformat und nächsts Format auf kompletten Textrahmen anwenden

joexx
Beiträge gesamt: 6

21. Sep 2011, 15:01
Bewertung:

gelesen: 1141

Beitrag als Lesezeichen
Hallo,

ich versuche in einem Textrahmen den Formatnamen des ersten Absatzes auszulesen, nach Export des Textes in die verknüpfte Textdatei, alles wieder einzulesen und das ursprüngliche Format auf den ersten Absatz mit den nächsten Formaten auf die Folgeabsätze zuzuweisen.
Die Tatsache, dass die Formate in Formatgruppen unterteilt sind bereitet mit Schwierigkeiten.

Wie kann ich das Script ändern, so dass es automatisch alle Absätze im Rahmen berücksichtigt, wenn sich die Absatzformate in Gruppen befinden?

Code
// die Absätze der Auswahl  
var curSel = app.selection[0].paragraphs;

var sel = app.selection[0];
var s = sel.parentStory;

// das Format des ersten Absatzes speichern
var aStyle = curSel[0].appliedParagraphStyle;

// eine Schleife durch die Absätze der Auswahl
for (n=1; n<curSel.length; n++) {
var nStyle = aStyle.nextStyle;
curSel[n].applyParagraphStyle(nStyle, true);
aStyle = nStyle;
}


Vielen Dank.

CS5: Absatzformat und nächsts Format auf kompletten Textrahmen anwenden

Martin Fischer
  
Beiträge gesamt: 12783

21. Sep 2011, 16:28
Bewertung:

gelesen: 1118

Beitrag als Lesezeichen
Hallo Jo,

Antwort auf: Wie kann ich das Script ändern, so dass es automatisch alle Absätze im Rahmen berücksichtigt


Meinst Du vielleicht vielmehr »alle Absätze im Textabschnitt«?

Dazu wäre die Zeile var curSel = app.selection[0].paragraphs; durch folgende zu ersetzen:
Code
var curSel = app.selection[0].parentStory.paragraphs; 


Und wenn tatsächlich nur die Absätze im aktuellen Textrahmen gemeint sind:
Code
var curSel = app.selection[0].parentTextFrames[0].paragraphs; 



Antwort auf: wenn sich die Absatzformate in Gruppen befinden?

Spielt das hier eine Rolle?
Funktioniert's nicht?

Viele Grüße
Martin


CS5: Absatzformat und nächsts Format auf kompletten Textrahmen anwenden

Martin Fischer
  
Beiträge gesamt: 12783

21. Sep 2011, 16:33
Bewertung:

gelesen: 1112

Beitrag als Lesezeichen
Deine Schleife könntest Du noch etwas verkürzen:

Code
for (var n = 1; n < curSel.length; n++)  
{
curSel[n].applyParagraphStyle(curSel[n-1].appliedParagraphStyle.nextStyle, true);
}


Viele Grüße
Martin


CS5: Absatzformat und nächsts Format auf kompletten Textrahmen anwenden

joexx
Beiträge gesamt: 6

21. Sep 2011, 18:20
Bewertung:

gelesen: 1078

Beitrag als Lesezeichen
Perfekt! Das war's. vielen Dank, Martin.

Grüße, Jörg