[GastForen Programmierung/Entwicklung AppleScript QuarkXPress 7.5 - Box duplizieren und verschieben per Script

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

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

ehwda
Beiträge gesamt: 66

28. Mai 2015, 17:17
Beitrag # 1 von 7
Bewertung:
(1908 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
 
Hallo

Eine Box zu duplizieren ist einfach, aber ich krieg den korrekten Code nicht zusammen, um die neue Box auf gleicher Höhe um 5 mm nach rechts zu platzieren (ohne die End-Masse einzusetzen).

Weiss jemand Rat?
Danke im Voraus.

Grüsse, Eugen
X

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

Hans Haesler
  
Beiträge gesamt: 5818

28. Mai 2015, 20:34
Beitrag # 2 von 7
Beitrag ID: #540053
Bewertung:
(1859 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Eugen,

um die Position einer Box zu erfahren, kannst Du die origin of bounds verlangen, indem Du sie den Variablen y und x zuweist.

Dann den vertikalen oder (in diesem Fall horizontalen) Wert mit as real in eine Zahl verwandeln, damit die 5 mm dazugezählt werden können.

Code
tell application "QuarkXPress" 
activate
-- die ausgewählte Box duplizieren
set newBox to duplicate current box
-- die Position der neuen Box speichern
set {y, x} to (origin of bounds of newBox) as list
-- die neue Box um 5 mm nach rechts verschieben ...
set origin of bounds of newBox to {y, (x as real) + 5}
-- ... und in den Vordergrund bewegen
move newBox to before current box
end tell

Gruss, Hans


als Antwort auf: [#540043]

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

ehwda
Beiträge gesamt: 66

29. Mai 2015, 08:06
Beitrag # 3 von 7
Beitrag ID: #540062
Bewertung:
(1817 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

herzlichen Dank, in diese Richtung habe ich es auch probiert. Leider funktioniert das nicht:

Code
	set origin of bounds of newBox to {y, (x as real) + 5} 


Die Fehlermeldung lautet
Code
error "«data FXHM00006200» kann nicht in Typ real umgewandelt werden." number -1700 from «data FXHM00006200» to real 


Gruss, Eugen
(und sein Mini-Apple mit OSX Lion)


als Antwort auf: [#540053]

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

Hans Haesler
  
Beiträge gesamt: 5818

29. Mai 2015, 08:53
Beitrag # 4 von 7
Beitrag ID: #540065
Bewertung:
(1794 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Eugen,

ich hatte QXP 8 verwendet, weil QXP 7.5 auf einer anderen Partition liegt.
Jetzt habe ich extra diese hochgefahren, kann aber das Problem nicht nachvollziehen.

Doch die Mitteilung kommt mir bekannt vor. Das hatten wir schon öfters.
Sie bedeutet, dass der Wert mithilfe von coerce umgewandelt werden muss.

Code
tell application "QuarkXPress 7.5" 
activate
-- die ausgewählte Box duplizieren
set newBox to duplicate current box
-- die Position der neuen Box speichern
set {y, x} to (origin of bounds of newBox) as list
-- die X-Position umwandeln
set x to coerce x to real
-- die neue Box um 5 mm nach rechts verschieben ...
set origin of bounds of newBox to {y, x + 5}
-- ... und in den Vordergrund bewegen
move newBox to before current box
end tell

Vielleicht klappt es jetzt.

Gruss, Hans


als Antwort auf: [#540062]

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

ehwda
Beiträge gesamt: 66

29. Mai 2015, 11:53
Beitrag # 5 von 7
Beitrag ID: #540085
Bewertung:
(1735 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans

Ja, so funktionierts. Jetzt sehe ich auch, warum andere Scripte mit "as real" reklamiert haben.

Aber ich habe einen Fehler gemacht, habe mich falsch ausgedrückt: Die eigentliche Absicht ist, die duplizierte Box um die Boxenbreite plus 5 mm zu verschieben.

Würdest du mir das noch ergänzen?
Vielen Dank.

Gruss, Eugen


als Antwort auf: [#540065]

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

Hans Haesler
  
Beiträge gesamt: 5818

29. Mai 2015, 13:43
Beitrag # 6 von 7
Beitrag ID: #540091
Bewertung:
(1704 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Eugen,

ich bin unterwegs und kann nicht prüfen, ob es so funktionieren wird.
Zusätzlich muss die Breite der Box festgestellt werden:

Code
set wB to width of bounds of newBox 
set wB to coerce wB to real

Und dann dieses wB in der Zeile einfügen, in welcher die Box verschoben wird.

Code
set origin of bounds of newBox to {y, x+wB+5} 

Gruss, Hans


als Antwort auf: [#540085]

QuarkXPress 7.5 - Box duplizieren und verschieben per Script

ehwda
Beiträge gesamt: 66

29. Mai 2015, 14:51
Beitrag # 7 von 7
Beitrag ID: #540098
Bewertung:
(1685 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans

Super! Und nochmals Dank.
Alles Gute unterwegs.

Gruss, Eugen


als Antwort auf: [#540091]
X