hilfdirselbst.ch
Facebook Twitter gamper-media
Mac OS X enthält verschiedene integrierte Werkzeuge und Technologien, mit denen sich gängige Aufgaben schnell und einfach automatisieren lassen.
Niala
Beiträge: 3
18. Dez 2017, 11:22
Beitrag #1 von 7
Bewertung:
(754 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Hallo Zusammen, ich hoffe hier Hilfe zu finden!
In einem Quark-Dokument (Vers. 8.5 unter OS X 10.8.5 ) mit mehreren Seiten, das per Layoutprogramm erzeugt wurde, gibt es jede Menge Bild- und Textboxen. Ein bestimmte "Sorte" Boxen steht falsch, x-Wert +0,353 mm, y-Wert + 0,353 mm. Es sind Textboxen, die außerdem, im Gegensatz zu allen anderen vorhandenen Boxen, 44,997 mm breit sind, die anderen sind 45 mm breit. Ich hab keine Idee, wie ich jetzt per Script diese schmaleren Boxen ansprechen und um je einen Punkt (0,353 mm) nach links bzw. oben verschieben kann. Bis jetzt mühsame Handarbeit...
Hat jemand eine Idee? Bin für jede Hilf dankbar!!!!! :)
Liebe Grüße
Niala
Top
 
X
Hans Haesler  M  p
Beiträge: 5580
18. Dez 2017, 12:37
Beitrag #2 von 7
Beitrag ID: #561498
Bewertung:
(743 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Hallo Niala,

herzlich willkommen im AppleScript-Forum auf HilfDirSelbst! :-)

Versuche es bitte mal mit diesem Script:

Code
tell document 1 of application "QuarkXPress" 
activate
set nFrames to count of text boxes
repeat with n from 1 to nFrames
tell text box n
set bW to width of bounds as real
if bW is less than 45 and bW is greater than 44 then
set oB to (origin of bounds) as list
set y1 to item 1 of oB
set x1 to item 2 of oB
set y1 to coerce y1 to real
set x1 to coerce x1 to real
set origin of bounds to {y1 - 0.353, x1 - 0.353}
end if
end tell
end repeat
display dialog "Fertig." buttons "OK" default button 1 with icon 1 giving up after 1
end tell

Gruss, Hans
als Antwort auf: [#561493]
(Dieser Beitrag wurde von Hans Haesler am 18. Dez 2017, 13:18 geändert)
Top
 
Niala
Beiträge: 3
18. Dez 2017, 13:06
Beitrag #3 von 7
Beitrag ID: #561500
Bewertung:
(738 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Hallo Hans, danke für die superschnelle Antwort - leider funktioniert das so nicht.
Das Script bleibt beim ersten "real" hängen mit der Meldung:

error "«data FXHM1C8F7F00» kann nicht in Typ real umgewandelt werden." number -1700 from «data FXHM1C8F7F00» to real

Oder mach ich was falsch?

Herzliche Grüße
NIala
als Antwort auf: [#561498] Top
 
Hans Haesler  M  p
Beiträge: 5580
18. Dez 2017, 13:18
Beitrag #4 von 7
Beitrag ID: #561501
Bewertung:
(737 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Hallo Niala,

bitte sehr.

Das muss an der OS-Version liegen. Ich habe QXP 8.5 nur unter Schneeleopard zur Verfügung.

Aber gleich muss ich weg. Doch ich werde es gegen Abend unter einem anderen OSX versuchen. Mit QXP 10 (oder so).

Gruss, Hans
als Antwort auf: [#561500] Top
 
Hans Haesler  M  p
Beiträge: 5580
18. Dez 2017, 17:07
Beitrag #5 von 7
Beitrag ID: #561513
Bewertung:
(714 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Hallo Niala,

das Problem konnte ich mit QXP 9.5 unter MacOS 10.8.5 nachvollziehen.

Die Lösung ist:
– Der Variablen wB in einem ersten Schritt die Breite der Boxen nur als Textkette zuweisen. Also z.B. "44,997 mm".
– Und erst danach mit coerce den Wert in eine Zahl mit Nachkommastellen (= as real) verwandeln.

Code
tell document 1 of application "QuarkXPress" 
activate
set nFrames to count of text boxes
repeat with n from 1 to nFrames
tell text box n
set wB to width of bounds
set wB to coerce wB to real
if wB is less than 45 and wB is greater than 44 then
set oB to (origin of bounds) as list
set y1 to item 1 of oB
set x1 to item 2 of oB
set y1 to coerce y1 to real
set x1 to coerce x1 to real
set origin of bounds to {y1 - 0.353, x1 - 0.353}
end if
end tell
end repeat
display dialog "Fertig." buttons "OK" default button 1 with icon 1 giving up after 1
end tell

So sollte es funktionieren. Gutes Gelingen!

Gruss, Hans
als Antwort auf: [#561500] Top
 
Niala
Beiträge: 3
19. Dez 2017, 08:09
Beitrag #6 von 7
Beitrag ID: #561523
Bewertung:
(659 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Waaaahnsinn!!!!

Guten Morgen Hans,
dein Script macht genau das, was es soll!
Bin total begeistert und bedanke mich sehr!

Ganz liebe Grüße und schon jetzt ein frohes Weihnachtsfest,
Niala
als Antwort auf: [#561513] Top
 
Hans Haesler  M  p
Beiträge: 5580
19. Dez 2017, 09:03
Beitrag #7 von 7
Beitrag ID: #561526
Bewertung:
(645 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Textboxen in QuarkXPress per Script verschieben


Guten Morgen Niala,

bitte sehr. Super, dass es klappt.

Eine kurze Erklärung, was das Script macht:
– eine Schleife durch die Textboxen des Dokuments;
– bei jeder wird die Breite der Box geholt;
– der Wert wird in zwei Schritten in eine Zahl umgewandelt;
– ein Test prüft, ob die Zahl kleiner als 45 und grösser als 44 ist;
– trifft dies zu, wird der Variablen oB der Ursprung der Abmessungen als Liste zugewiesen;
– die Liste enthält die Werte X und Y der Ecke oben links;
– die beiden Werte werden in Zahlen umgewandelt;
– dem Ursprung werden die Werte y1 und x1 (minus je 0.353) zugewiesen;
– und die Textbox wird wie gewünscht verschoben.

Auch Dir eine angenehme Zeit.

Gruss, Hans
als Antwort auf: [#561523] Top
 
X