Hallo mikelchris,
unter Leidensgenossen darf man sich schon Du sagen. :-) Also … nein, das im von Dir erwähnten Thread geschilderte Problem
hat nichts mit der Ursache des Absturzes beim PS-Dateien-Erzeugen zu tun. Warum? Im Thema "Vorsicht, beim Abfragen von
Seitennummern" geht es um das Feststellen der Nummer der Seite, auf welcher eine ausgewählte Textbox liegt. Im PS-Erzeugen-
Script hingegen, werden nur die eingegebenen Seiten gedruckt.
Dieses Script ist vom ähnlichen "Jede Seite als EPS..." abgeleitet. Aber beim Testen merkte ich bald, dass das EPS-Schreiben
viel robuster ist, als das PS-Drucken. Nach ein paar Abstürzen wollte ich zuerst zur alten Version zurückkehren. Aber dann
bemerkte ich, dass ein Absturz erfolgte, wenn das zu druckende Layout nicht im Vordergrund war. Also änderte ich den Code,
so dass zuerst das gewünschte Layout nach vorne gestellt wurde.
Das schien zu helfen … bis zum nächsten Absturz. Daraufhin nahm ich die Repeat-Schleife, welche durch die Seiten geht, aus
dem Script-Objekt heraus und verlegte sie hinauf in den Run-Handler. Nun wird das Script-Objekt einzeln für jede Seite
aufgerufen, nachdem der Variablen 'p' die Seitennummer zugewiesen wurde. Nach dieser Änderung hatte ich keine Abstürze mehr.
Und ich machte noch manchen Probelauf. Weil das Auswerten der eingegebenen Seitenbereiche äusserst verzwickt ist …
Was könnte denn die Ursache bei Deinen Abstürzen sein? Ich tippe auf unsaubere Projekte! Denn kürzlich meldete mir ein
Amerikaner dasselbe Problem. Ich bat ihn, mir das Projekt zuzustellen. Ich stellte fest, dass es wohl mit "QXP 6.0" erzeugt
worden ist, aber dann zurück nach v5 gesichert, dann wieder mit v6.0 und schliesslich mit v6.1. So darf man nicht arbeiten.
Das sind instabile Projekte, welche bei anscheinend heiklen Operationen Probleme machen.
Weil ich weder die Schriften, noch die Bilder, noch seine Arbeitsumgebung hatte, machte es keinen Sinn, von diesem Projekt
die PS-Dateien zu erzeugen. Aber ich konnte das Problem mit einem frischen Projekt nachstellen. Ein QXP-4.11-Dokument
mit QXP 6.1 geöffnet und gesichert. Nur drei Seiten. Auf jeder eine Textzeile, ein Bild und die Seitennummer. Die Datei für
die Seite 2 wurde noch gerade erzeugt, dann "bumm", Absturz. Ich wiederholte dies, um sicher zu sein. Dasselbe Problem.
Dann öffnete ich dasselbe QXP-4.11-Dokument, aber diesmal mit gedrückter Optionstaste. Damit wird das Dokument
zu einem QXP-6.x-Projekt upgegradet. Es ist kein reines 6.1-Projekt, aber die "flow version" ist wenigstens angepasst.
Achtung: Dies funktioniert nur mit Befehl-O, aber nicht beim Doppelklick oder beim Ziehen auf das Icon im Dock.
Öffne mal solch ein Problem-Projekt und führe bitte folgendes Script aus:
---
tell document 1 of application "QuarkXPress 6.1"
flow version
end tell
---
Das Ergebnis sollte '12' sein.
Ich überlegte mir aber, dass XPress auch unglücklich sein könnte, wenn die zu druckende Seite nicht sichtbar ist. Also fügte
ich einen Befehl ein, welcher diese Seite anzeigt. Ich schickte dem Amerikaner das ergänzte Script. Hörte von ihm aber nur,
dass er sich bessern will, was die Sauberkeit der Projekte anbelangt …
Als weitere Massnahme könnte man das Script-Objekt 'saveAsPS' in einen Handler umwandeln: 'on saveAsPS()' und ihn anstelle
von 'do script {saveAsPS}' mit 'my saveAsPS()' aufrufen.
Hans Haesler <hsa@ringier.ch>
als Antwort auf: [#419187]