Hallo Armin,
ja, mein Vorschlag war für den Fall gedacht, dass ein Dokument überprüft werden muss. Statt nur zu zählen, könnte man die Objektreferenzen der Boxen sammeln und sie dann gezielt behandeln.
Aber wenn Du die Boxen in der Schleife (in welcher sie mit Text gefüllt werden) anpassen willst, dann muss man anders vorgehen. Übrigens... den "show"-Befehl kann man auch so schreiben:
Ich verstehe nicht ganz, weshalb die "do script"-Methode unter 4.11 nicht funktioniert. Im übrigen kann die Ausführung sicher optimiert werden. Die "Bremse" ist die 1-Punkt-Schritt-Vergrösserung. Hier zwei Vorschläge.
1) Beginne mit einer Grob-Anpassung in 10-Punkt-Schritten. Sobald kein Überlauf mehr ist, mit 1-Punkt-Schritten verkleinern. Zuletzt wieder einen Punkt zugeben.
---
tell document 1 of application "QuarkXPress 4.11"
activate
set vertical measure to points
tell text box 1
repeat while box overflows
set height of bounds to (height of bounds as real) + 10
end repeat
repeat until box overflows
set height of bounds to (height of bounds as real) - 1
end repeat
set height of bounds to (height of bounds as real) + 1
end tell
end tell
---
2) Definiere die Höhe der Box übertrieben gross. So dass es keinen Überlauf geben kann. Nach dem Füllen mit Text wird die Position der untersten Zeile festgestellt. Und die Höhe der Box wird gezielt ausgerechnet: "baseline" plus "Fleisch". Dieser Wert für die Distanz von der Schriftlinie bis zum Boxenrand muss je nach Schrift und Grösse angepasst werden.
---
tell document 1 of application "QuarkXPress 4.11"
activate
tell page 1
tell text box 1
tell story 1
set basePos to ((baseline of line -1) as real)
end tell
set height of bounds to basePos + 1.2
end tell
end tell
end tell
---
Für dieses zweite Beispiel gilt wieder die Masseinheit "millimeters". Der Zugabewert entspricht einer "Helvetica Neue" in 12 pt. Es muss auch die Rahmenstärke und ein eventueller Textabstand berücksichtigt werden. Achtung: nicht zu knapp einstellen! Lieber einen Zehntel als "Sicherheit" zugeben.
Wetten, dass der Unterschied bei 500 Seiten spürbar wird? :-)
Hans Haesler <hsa@ringier.ch>