[GastForen Programmierung/Entwicklung AppleScript Textketten mit Zahlen abfragen

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

Textketten mit Zahlen abfragen

Rainer M
Beiträge gesamt: 11

26. Feb 2009, 15:04
Beitrag # 1 von 3
Bewertung:
(1113 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

nach vielen Jahren des Nicht-Scriptens wollte ich ein altes Script (QXP5, OS9) unter Leopard und QXP7 aktivieren - aber es läuft leider nicht mehr.

tell application "QuarkXPress Passport"
    tell page 1 of front document
        if ((words of story 1 of text box 1) whose (baseline > 12)) exists then beep 3
    end tell
end tell

mit "get baseline of words of story 1 of text box 1" erhalte ich eine Liste {"3,175 mm", "3,175 mm", "7,408 mm", "7,408 mm", "11,642 mm"}, die ich abfragen möchte. Sind ein/mehrere/alle Werte größer/gleich X?
Gibt es dafür eine Lösung?

Danke für eine Antwort

Es grüßt ein ewiger Anfänger
X

Textketten mit Zahlen abfragen

Hans Haesler
  
Beiträge gesamt: 5818

26. Feb 2009, 15:55
Beitrag # 2 von 3
Beitrag ID: #422890
Bewertung:
(1112 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Rainer,

welcome back! Wie hast Du das ohne Scripten nur ausgehalten?!? ;-)

Die Liste, welche Du mit Deinem Testscript erhältst, besteht aus vier Elementen, welche wie Textketten aussehen.

Wenn man solche Werte mit einer nackten Ganzzahl vergleicht, dann kann das Ergebnis nicht korrekt sein. Zudem enthält die Liste nicht Textketten, sondern "vertikale Maße":
---
tell document 1 of application "QuarkXPress Passport"
   tell page 1
      set baseList to baseline of words of story 1 of text box 1
      class of item 1 of baseList
   end tell
end tell
---
Das Ergebnis: vertical measurement

Dieser Wert muss zuerst in eine Zahl verwandelt werden, mit welcher mathematische Operationen möglich sind. Und weil die Liste mehrere Werte enthält, müssen sie in einer Wiederholungsschleife einzeln behandelt werden.
---
-- zwei Variablen initialisieren
set ctr to 0
set testVal to 12

tell document 1 of application "QuarkXPress Passport"
   tell page 1
      -- die Liste verlangen
      set baseList to baseline of words of story 1 of text box 1
      repeat with i from 1 to count baseList
         -- wenn der aktuelle Wert gleich oder grösser als der Testwert ist ...
         if ((item i of baseList) as millimeter units as real) is greater than or equal to testVal then
            -- ... dann wird der Wert des Zählers um eins erhöht
            set ctr to ctr + 1
         end if
      end repeat
   end tell
   display dialog "Worte mit Grundlinie über " & ¬
      testVal & " mm: " & ctr buttons "OK" default button 1 with icon 1
end tell
---
Gruss, Hans


als Antwort auf: [#422889]

Textketten mit Zahlen abfragen

Rainer M
Beiträge gesamt: 11

26. Feb 2009, 16:09
Beitrag # 3 von 3
Beitrag ID: #422891
Bewertung:
(1112 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

vielen Dank für die schnelle Antwort.
Ich habe schon geahnt, dass ich mit einer Script-Zeile nicht auskommen werde.
Aber ich wundere mich jetzt wirklich, warum das Script damals unter QXP5 und OS9 ohne Probleme lief.
Ich hatte angefangen ein Script zu schreiben, das in Quark Zahlen (Preislisten) neu errechnen sollte. Ich wollte eine Text- oder Bildbox über die zu errechnenden Zahlen legen und innerhalb dieser Koordinaten sollten alle Ziffern um einen Faktor x verändert werden.
Aber vielleicht gibt's das ja schon.
Eine Xtension, die ähnlich arbeitet heißt Mathgrabber (glaube ich)

Nochmals Danke!


als Antwort auf: [#422889]

Aktuell

Web / SEO / Blockchain / Betriebssystem
unsplash_300

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
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/

Veranstaltungen
01.03.2023 - 09.03.2023

Online
Mittwoch, 01. März 2023, 00.00 Uhr - Donnerstag, 09. März 2023, 00.00 Uhr

Online Webinar

Wie gehen wir mit diesen Veränderungen um? Was ist notwendig, damit wir die Digitalisierung im Unternehmen klappt? Veränderungsprozesse verstehen und entsprechend handeln Mitarbeiter als Botschafter Webseite mit WordPress erstellen SEA /SEO (Ads aufschalten)

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: B. Isik, E-Mailinfo AT snfa DOT ch

https://www.fernstudiumfitness.ch/digitalisierung-schweiz/