[GastForen Programmierung/Entwicklung AppleScript verankerte Rahmen in QuarkXPress ersetzen

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

verankerte Rahmen in QuarkXPress ersetzen

J.Puff
Beiträge gesamt: 234

19. Apr 2015, 10:26
Beitrag # 1 von 4
Bewertung:
(1850 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!
Ich suche nach einer Möglichkeit, verankerte Textrahmen in QuarkXPress, die eine Zahl enthalten, nach einer definierten Liste zu einem Buchstaben umzuwandeln. Je nach Farbe des verankerten Rahmes soll ein bestimmtes Zeichenformat zugewiesen werden.
Beispiel: in einem verankerten Rahmen mit rotem Hintergrund steht die Zahl 12, die Verankerung sollte aufgelöst und an die Stelle der Buchstabe w eingesetzt werden, dem das Zeichenformat Rot zugewiesen wird.
Ich verwende QuarkXPress 7.5 unter MacOS X 10.7-10.9.

Mit freundlichen Grüße
Johannes.
X

verankerte Rahmen in QuarkXPress ersetzen

Hans Haesler
  
Beiträge gesamt: 5818

19. Apr 2015, 17:28
Beitrag # 2 von 4
Beitrag ID: #538908
Bewertung:
(1796 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Johannes,

ich habe Verschiedenes vesucht. Leider ohne Erfolg.

Ein neues Projekt, eine Textbox mit etwas Text, eine kleine, quadratische Textbox verankern, roter Hintergrund, Inhalt die Zahl "1".

Es ist einfach, die verankerte Textbox zu finden. Dank der Eigenschaft 'anchored'. Die Hintergrundfarbe und der Inhalt: kein Problem.
Das Entfernen der Box mit 'delete' ist unzulässig. Aber sie kann ausgewählt und mit 'cut' entfernt werden.

Code
tell application "QuarkXPress" 
activate
if not (exists document 1) then
display dialog "Bitte ein QuarkXPress-Projekt öffnen." buttons "OK" default button 1 with icon 0
error number -128
end if
tell document 1
set allBoxes to every text box whose anchored is true
tell item 1 of allBoxes
set curNbr to (contents of story 1) as number
set curCol to name of color
select
end tell
end tell
cut
end tell

Die Texbox ist weg. Spurlos verschwunden. Also keine Möglichkeit, einen Buchstaben, welcher der gespeicherten Zahl entspricht, einzusetzen.

Und wenn anstelle von 'cut' ein 'paste' verwendet wird? Geht nicht, weil das Zeichen in der verankerten Box eingesetzt wird, anstatt diese zu ersetzen.

Doch das gibt eine Idee für einen weiteren Versuch:
– die Infos der verankerte Box speichern (Zahl, Farbe)
– die verankerte Box auswählen ...
– ... und in eine Bildbox verwandeln
– aus der Liste den Buchstaben holen, welcher der Zahl entspricht
– diesen Buchstaben in die Zwischenablage setzen
– mit 'paste' anstelle der Bildbox einfügen

Code
set charList to {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M"} 

tell application "QuarkXPress"
activate
if not (exists document 1) then
display dialog "Bitte ein QuarkXPress-Projekt öffnen." buttons "OK" default button 1 with icon 0
error number -128
end if

tell document 1
set allBoxes to every text box whose anchored is true

tell item 1 of allBoxes
set curNbr to (contents of story 1) as number
set curCol to name of color
select
set box type to picture box type
end tell

end tell
set curChar to item curNbr of charList
my setToClipboard(curChar)
paste
end tell

on setToClipboard(curChar)
set the clipboard to curChar
end setToClipboard

Ergebnis: Die Bildbox ist immer noch da. Das funktioniert auch nicht.

Hoffentlich hat jemand eine bessere Idee und kann uns zeigen, wie man das macht.

Gruss, Hans


als Antwort auf: [#538906]

verankerte Rahmen in QuarkXPress ersetzen

ehwda
Beiträge gesamt: 66

1. Mai 2015, 17:08
Beitrag # 3 von 4
Beitrag ID: #539364
Bewertung:
(1642 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Johannes

Falls dein Anliegen noch aktuell ist: Habe hier ein Beispiel-Script gebastelt, das vielleicht weiter hilft.
Es funktioniert nur auf der jeweils aktiven Seite. Das "tell current page" ist Absicht, denn ohne das entsteht "Kuddelmuddel". Du musst also "von Hand" von Seite zu Seite wechseln. Bei mir funktionierts auf diese Weise.

Code
tell application "QuarkXPress Passport" 
activate

tell document 1
tell current page
set allBoxes to every text box whose anchored is true
set zahl to count of allBoxes
repeat with i from 1 to zahl
tell item i of allBoxes
select
set curCol to name of color
if curCol is "Magenta" then set story 1 to "w"
if curCol is "Cyan" then set story 1 to "x"
if curCol is "Gelb" then set story 1 to "y"

cut

tell application "System Events"
tell application process "QuarkXPress" to click menu item "An gleicher Stelle einfügen" of menu "Bearbeiten" of menu bar item "Bearbeiten" of menu bar 1
end tell
end tell
end repeat
end tell
end tell
end tell


Zuerst werden die Zahlen je nach Farbe der Textrahmen durch Buchstaben ersetzt.
Dann wird der verankerte Textrahmen ausgeschnitten und als nicht-verankerter Rahmen wieder an gleicher Stelle (Menü-Punkt "An gleicher Stelle einfügen") wieder platziert.

Gruss, Eugen


als Antwort auf: [#538906]

verankerte Rahmen in QuarkXPress ersetzen

J.Puff
Beiträge gesamt: 234

4. Mai 2015, 23:03
Beitrag # 4 von 4
Beitrag ID: #539405
Bewertung:
(1565 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Eugen,
vielen Dank für Deine Antwort. Das Problem ist noch ungelöst.
Leider hilft auch Dein Ansatz nicht, denn die verankerten Rahmen sollen ja gänzlich verschwinden und an ihre Stelle soll ein Buchstaben gemäß eines bestimmten Mappings treten. Idealerweise dann mit einem Zeichenformat versehen werden, je nach Farbe des verankerten Kastens.

Siehst Du dafür eine Möglichkeit?
Beste Grüße
Johannes.


als Antwort auf: [#539364]
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
09.05.2023

Digicomp (Bern, Basel, Zürich)
Dienstag, 09. Mai 2023, 08.30 - 17.00 Uhr

Kurs

Sie verfügen über ein Abonnement der Creative Cloud, welches Adobe Acrobat DC Pro beinhaltet. Sind Sie unsicher, ob Ihre PDF Dateien für die jeweilige Druckausgabe geeignet sind? Lernen Sie in diesem Kurs das notwendige Rüstzeug für den sicheren Datenaustausch mit Druckdienstleistern. Erstellen Sie druckfähige PDF/X und prüfen Sie Ihre PDFs vor einer Weitergabe mit Acrobat DC Pro.

Dauer: 1 Tag
Preis: CHF 700.–, exkl. MWST

Ja

Organisator: Digicomp Academy AG

https://digicomp.ch/weiterbildung-media-communication/adobe/kurs-pruefen-von-druck-pdf-in-acrobat-dc-pro--basic

Prüfen von Druck-PDF in Acrobat DC Pro