[GastForen Programmierung/Entwicklung AppleScript [quark] get paragraph properties

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

[quark] get paragraph properties

Anonym
Beiträge gesamt: 22827

20. Sep 2006, 08:43
Beitrag # 1 von 7
Bewertung:
(2120 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans, hallo Leute,

ich bin nach langer Abstinenz einmal wieder beim scripten und habe schon ein Problem.

Ziel:
die Paragraph properties/ bzw andere Text properties auslesen

Problem:
Es will mir nicht gelingen, selbst die einfachste Struktur funktioniert nicht.
Script (wurde stark vereinfacht, um den Zugriff auf die properties zu prüfen)
Den Aufruf zum "show/tell page" habe ich eingebaut, da der Text Überlauf nur richtig zurückgegeben wird, wenn die Seite angezeigt wird.

tell application "QuarkXPress Passport"
tell document 1
show page 1
tell page 1
tell text box 1

set xPrefTextFrame to (get properties)

set xTXT to get text 1
log xTXT
--tell text 1
--set xTXTPref to (get properties)
--end tell


set xStry to get story 1
log xStry
--tell story 1
--set xStryPref to (get properties)
--end tell


set xPrgh to get paragraph 1
log xPrgh
--tell paragraph 1
--set xPrghPref to (get properties)
--xPrghPref
--end tell
end tell
end tell
end tell
end tell


Was mache ich falsch? Ist die Hierarchie denn falsch oder lückenhaft?
Bin für jeden Tipp dankbar


Armin



Quark 6.5
MacOS 10.4.7
X

[quark] get paragraph properties

Hans Haesler
  
Beiträge gesamt: 5826

20. Sep 2006, 11:16
Beitrag # 2 von 7
Beitrag ID: #421161
Bewertung:
(2119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Armin,

welcome back! :-)

Was, bitte, will Dir nicht gelingen? Die Befehle Deines Scripts funktionieren
hier einwandfrei. Ich habe den Code noch weiter vereinfacht und erhalte damit
die Properties des ersten Absatzes:
---
tell application "QuarkXPress Passport"
   tell document 1
      tell page 1
         tell text box 1
            tell paragraph 1
               set xPrghPref to properties
            end tell
         end tell
      end tell
   end tell
end tell
---
Gruss, Hans


als Antwort auf: [#421160]

[quark] get paragraph properties

Anonym
Beiträge gesamt: 22827

20. Sep 2006, 12:01
Beitrag # 3 von 7
Beitrag ID: #421162
Bewertung:
(2119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat von author="Hans Haesler" date="1158743771" welcome back! :-)

danke


Zitat von author="Hans Haesler" date="1158743771" Was, bitte, will Dir nicht gelingen? Die Befehle Deines Scripts funktionieren hier einwandfrei.


Bei mir stürzt Quark ab, daher dachte ich, daß ich einen falschen/invalid Aufruf starte. Für mich war die Reihenfolge auch richtig und die properties auslesen war bisher einfach und hat bestens. Da die Abstürze reproduzierbar sind, denke ich es liegt an Quark - shit.
Fehlermeldung -> "Die Verbindung ist ungültig" - siehe Screenshot (Screenshot wollte nicht hochgeladen werden MySQL Error 1062 - weder jpg noch gif)
Hmmm - was machen, sprach Zeus?

Grüße

Armin


als Antwort auf: [#421160]

[quark] get paragraph properties

Hans Haesler
  
Beiträge gesamt: 5826

20. Sep 2006, 19:04
Beitrag # 4 von 7
Beitrag ID: #421163
Bewertung:
(2119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Armin,

die Meldung "Die Verbindung ist ungültig" kommt immer, wenn QuarkXPress
abgestürzt ist und ein Script ungerührt weitere Befehle schickt ...

Die Ursache für den Absturz? Könnte ein korruptes Projekt sein, das heisst
ein unter QXP X.x erzeugtes Dokument, welches mit jeder neuen Version
geöffnet und gesichert worden ist, ohne dass wenigstens ein Update gemacht
worden ist. Und Altlasten mit sich schleppt, welche schon mal stören dürften.

Geschieht es aber auch mit einem frisch erzeugten Projekt, dann könnten
beschädigte Dateien schuld sein, z.B. ein Wörterbuch oder eine XTension.

Oder die Vorgabe-Dateien sind unstabil geworden. Wo steckt deren Ordner?
In der Bibliothek des eingeloggten Benutzers? Dann würde ich mal im
XPress-Programmordner eine neuen Ordner anlegen und ihn "Preferences"
benennen. Nach dem Start von QuarkXPress müssen die Einstellungen
der Vorgaben neu vorgenommen werden. Aber das beherrschen wir doch
im Schlaf. ;-) Anschliessend ein Backup dieses Preferences-Ordners machen,
damit er nach zukünftigen Abstürzen ersetzt werden kann.

Es könnte aber auch sein, dass beschädigte Schriftdateien ein normales
Abspielen von Scripts verunmöglichen.

Wie Du siehst, ist es sehr schwierig, aus der Ferne eine Diagnose zu stellen.
Vielleicht hilft auch eine Neuinstallation von QuarkXPress ...

Gruss, Hans


als Antwort auf: [#421160]

[quark] get paragraph properties

Anonym
Beiträge gesamt: 22827

20. Sep 2006, 20:18
Beitrag # 5 von 7
Beitrag ID: #421164
Bewertung:
(2119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat von author="Hans Haesler" date="1158771877" Die Ursache für den Absturz? Könnte ein korruptes Projekt sein, das heisst
ein unter QXP X.x erzeugtes Dokument, welches mit jeder neuen Version
geöffnet und gesichert worden ist, ohne dass wenigstens ein Update gemacht
worden ist. Und Altlasten mit sich schleppt, welche schon mal stören dürften.

Danke für den Hinweis - es liegt definitiv am Projekt. Ein neu erstelltes Projekt funktioniert einwandfrei. Das Script läuft und ich bin happy, daß ich doch noch scripten kann.
Jetzt hab ich aber das Problem mit den Projekten - die sind übrigens nicht alt, sondern werden immer aus der DB mittels InBetween neu erstellt - aber leider nicht richtig, wie ich sehe. Nach einer Sicherung von "einsprachig" auf "mehrsprachig" unter einem anderem Namen hat es wiederum funktioniert.

Vielen Dank für deinen Hinweis.
Ich hoffe es funktioniert bei meinem Kunden nun ohne Probleme.

Viele Grüße

Armin


als Antwort auf: [#421160]

[quark] get paragraph properties

Anonym
Beiträge gesamt: 22827

20. Sep 2006, 21:29
Beitrag # 6 von 7
Beitrag ID: #421165
Bewertung:
(2119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
News!

Ich habe jetzt einmal das Projekt geprüft, nachdem auch nach dem speichern wieder Probleme aufgetreten sind (Absturz von Quark).
Die Inhalte der "paragraphs" kann ich immer auslesen, nicht jedoch die properties.
Grund: Der Überlauf, die Textanzeige!
Jederzeit reproduzierbar:
- Ein Textrahmen mit enthaltenem Text - alles funktioniert einwandfrei.
- dito mit Überlauf - alles funktioniert einwandfrei
- dito ohne Textanzeige (Höhe wurde soweit reduziert, daß kein Text dargestellt wird) - crash

Jetzt weiß ich zwar, woran es liegt. Nicht jedoch, wie ich es umgehen kann, denn ich kann ja die Sichtbarkeit der 1. Zeile nicht prüfen. Selbst, wenn ich prüfen kann, muß ich trotzdem die properties auslesen und den Rahmen möchte/darf ich nicht ändern.

Viele Grüße

Armin


als Antwort auf: [#421160]

[quark] get paragraph properties

Hans Haesler
  
Beiträge gesamt: 5826

20. Sep 2006, 22:16
Beitrag # 7 von 7
Beitrag ID: #421166
Bewertung:
(2119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Armin,

den Crash kann ich bestätigen.

Hier ein Vorschlag, um das Problem zu umgehen: Die Höhe der Box speichern, auf
einen "sicheren" Wert erhöhen, die Properties holen, die alte Höhe wiederherstellen:
---
tell application "QuarkXPress Passport"
   tell document 1
      tell page 1
         tell text box 1
            set boxHeight to height of bounds
            set height of bounds to "100 mm"
            tell story 1
               tell paragraph 1
                  set xPrghPref to (get properties)
               end tell
            end tell
            set height of bounds to boxHeight
         end tell
      end tell
   end tell
end tell
xPrghPref
---
Gruss, Hans


als Antwort auf: [#421160]
X