[GastForen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Forenindex -- Lesezeichen

1 Lesezeichen für function

Textrahmen > .fit (FitOptions.FRAME_TO_CONTENT)
Hallo!

Mir ist offensichtlich nicht klar, wie der fit-Befehl im Zusammenhang mit Textrahmen funktioniert.

Beispiel 1:
Ein Textrahmen mit zwei Absätzen, der letzte Absatz teilweise im Übersatz. Wenn ich den Rahmen markiere und folgende Zeilen laufen lasse:
Code
var _auswahl = app.selection[0]; 
_auswahl.fit (FitOptions.FRAME_TO_CONTENT);

wird der Rahmen nach unten vergrößert, ähnlich dem Doppelklick Mitte unten.

Beispiel 2:
Ein Textrahmen mit zwei Absätzen, … + Zuweisen neuer Formate.
Hier wird der Rahmen nicht markiert, sondern ich habe vorher in einer Schleife nur solche Rahmen mit Label ausgelesen, diese in einem Array gespeichert und gehe dann das Array erneut mit einer Schleife durch.
Hier macht jetzt:
Code
theFrame.fit(FitOptions.FRAME_TO_CONTENT); 

mit eigentlich dem gleichen Rahmen aus Beispiel 1 nicht die Vergrößerung nach unten, sondern vergrößert mir den Rahmen nach rechts und zwar so, dass ein kompletter Absatz in der Breite hineinpasst :(

Frage:
Kann ich hier gar nicht mit dem fit-Befehl arbeiten und ich muss die letzte Grundlinie ermitteln u. dann die geometricBounds ändern oder habe ich hoffentlich nur einen Fehler gemacht und es geht doch mit 'fit'?

Anbei noch mein Code-Schnipsel. Danke.

Code
// eine Schleife durch alle gelabelten Rahmen 
for ( var i=0; i < labelFrames.length; i++ ) {
var theFrame = labelFrames[i];
theFrame.select();
// eine Schleife durch die Formatgruppen
for (var n=0; n < paraGroups.length; n++) {
var curGroup = paraGroups[n];

// prüft, ob der Name des Etiketts mit dem Namen der Absatzformategruppe übereinstimmt
if (theFrame.name == curGroup.name) {
alert ("Etikett: " + theFrame.name + "\r" + "Formatgruppe: " + curGroup.name);
// die jeweiligen Absatzformate
var pStyle1 = curGroup.paragraphStyles.itemByName("Subheadline");
var pStyle2 = curGroup.paragraphStyles.itemByName("Paragraph");

// mit parentStory erhalte ich auch Absätze im Übersatz
var allParas = theFrame.parentStory.paragraphs;
// eine Schleife durch alle Absätze im Rahmen
for ( var p=0; p < allParas.length; p++ ) {
var curPara = allParas[p];
if (curPara.appliedParagraphStyle.name == "Subheadline") {
curPara.appliedParagraphStyle = pStyle1;
}
else if (curPara.appliedParagraphStyle.name == "Paragraph") {
curPara.appliedParagraphStyle = pStyle2;
}
} // for
} // if
} // for
theFrame.fit(FitOptions.FRAME_TO_CONTENT);
} // for

...
Kai Rübsamen
17. Okt 2013, 18:55