[GastForen Programmierung/Entwicklung AppleScript Text style in Quark 4 und Quark 5

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

Text style in Quark 4 und Quark 5

Anonym
Beiträge gesamt: 22827

19. Dez 2003, 12:05
Beitrag # 1 von 6
Bewertung:
(1890 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

in Quark 4.11 ändere ich in einem importiertem Text folgendermaßen:

tell every story
 
  tell (every text style range where style of it = bold)
   set style of every text to plain
  end tell
  tell (every text style range where font of it = "Cinema")
   set style of every text to plain
  end tell
 
 end tell

Bold gestellter Text ist danach nicht mehr bold, alles im Font "Cinema" gesetzte verliert damit auch Kaps etc.

In Quark 5 funktioniert es nicht mehr.
Offensichtlich überschreibt "plain" nicht mehr die anderen Formatierungen, denn der prinzipielle Ablauf funktioniert, wenn ich z.B. allen diesen Texten "itailic" zuweise (statt plain), sind sie dann tatsächlich nach Ablauf des Scripts alle bold und Italic.

Wie kriege ich die Formatierungen in Quark 5 weg?

Markus
X

Text style in Quark 4 und Quark 5

Hans Haesler
  
Beiträge gesamt: 5826

19. Dez 2003, 15:23
Beitrag # 2 von 6
Beitrag ID: #418519
Bewertung:
(1889 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

dasselbe Problem gibt es auch in XPress 6. Bisher habe ich es gelöst, indem ich statt 'plain' den aktuellen Stil zugewiesen habe:
Code
set style to bold 

Dasselbe funktioniert ja auch manuell: wähle ein Wort aus und wiederhole Befehl-Umschalt-B. Wie ein Schalter, welchen man an- und ausknipst. Per Script klappt dies gut, solange man den angewendeten Stil kennt und es keine Kombinationen (wie Bold-Italic) sind.

Jetzt, beim Herumprobieren, habe ich nun einen neuen Workaround gefunden, welcher keine Einschränkungen mehr hat :-): die Konstante 'plain' mit Akkoladen versehen. Dies ist ja auch das Resultat von 'on styles of (get style)'.
---
tell document 1 of application "QuarkXPress 5.01"
  activate
  tell every story
    try
      tell (every text style range where style of it = bold)
        set style to {plain}
      end tell
    end try
    try
      tell (every text style range where font of it = "Cinema")
        set style to {plain}
      end tell
    end try
  end tell
end tell
---
In der Zeile, welche mit 'set' beginnt, ist der Zusatz 'of every text' überflüssig. Und ich rate Dir, beide Befehle mit 'try' / 'end try' einzupacken. Damit verhindert man eine Fehlermeldung (und den Abbruch der Ausführung), wenn z.B. mal kein fetter Text vorhanden ist.

Übrigens: danke, Markus!

Hans Haesler <hsa@ringier.ch>


als Antwort auf: [#418518]

Text style in Quark 4 und Quark 5

Anonym
Beiträge gesamt: 22827

23. Dez 2003, 12:55
Beitrag # 3 von 6
Beitrag ID: #418520
Bewertung:
(1889 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

vielen Dank für die Unterstützung.
Die Überlegungen mit dem Schalter, den man an und ausschalten kann, hatte ich auch schon, aber bis jetzt noch keine Lösung, wie man ihn auch wie einen Schalter per Script bedient, also gewissermaßen "turn bold on/off" oder so. Aber da fehlt mir einfach die Script-Erfahrung, und in den Beispielen, die ich habe, geht es seltem um typografische Probleme, während ich Scripte bisher (nur) einsetze, um importierte Texte möglichst einfach und sicher umzuwandeln - wobei ich aber die vorhanden Formatierungen nicht verlieren möchte, sondern typografisch korrekt umzusetzen.

Schöne Feiertage

Markus


als Antwort auf: [#418518]

Text style in Quark 4 und Quark 5

Anonym
Beiträge gesamt: 22827

28. Jan 2004, 13:41
Beitrag # 4 von 6
Beitrag ID: #418521
Bewertung:
(1889 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

für das zuweisen von komplexen Stilen (z.B. bold, italic und auch noch outline) funktioniert folgende Lösung:

set style to {on styles:{bold, outline, italic}, off styles:{plain, underline, shadow, superscript, subscript, superior, strikethrough, all caps, small caps, word underline}}

Je nach Bedarf kann man die Begriffe zwischen on styles und off styles verschieben. Vorsicht: wenn man eine ungülitge Version wählt, gibt es eine Fehlermeldung.

Markus



als Antwort auf: [#418518]

Text style in Quark 4 und Quark 5

Hans Haesler
  
Beiträge gesamt: 5826

28. Jan 2004, 15:50
Beitrag # 5 von 6
Beitrag ID: #418522
Bewertung:
(1889 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

ja, Deine Lösung funktioniert. Doch: die 'off styles' kannst Du Dir sparen. Und wofür sie gedacht sind, weiss ich auch nicht.

Es genügt, die 'on styles' aufzuführen &#133;
Code
set style to {on styles:{bold, italic, outline}} 

&#133; auch wenn dem Text eine andere Kombination zugewiesen ist.

Die Liste der Style kann auch vorher zusammengesetzt und dann mit einer Variablen zugewiesen werden:
---
tell document 1 of application "QuarkXPress 5.01"
  set newStyle to {bold, italic, outline}
  tell current box
    tell story 1
      tell paragraph 1
        set style to {on styles:newStyle}
      end tell
    end tell
  end tell
end tell
---

Man sollte auch vorsichtig sein mit Stilen, die sich gegenseitig ausschliessen:
underline &#150; word underline / all caps &#150; small caps / superscript &#150; subscript

Manuell können diese Paare nicht gleichzeitig angewendet werden. Per Script sehr wohl: es gibt keine Fehlermeldung. Aber ich glaube nicht, dass dies zur Stabilität des Dokuments beitragen würde &#133;

Hans Haesler <hsa@ringier.ch>


als Antwort auf: [#418518]

Text style in Quark 4 und Quark 5

Hans Haesler
  
Beiträge gesamt: 5826

28. Jan 2004, 23:00
Beitrag # 6 von 6
Beitrag ID: #418523
Bewertung:
(1889 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

was ich noch hätte einfügen sollen: wenn Du einen triftigen Grund für
die Auflistung der 'off styles' kennst (ausser sie zur Hand zu haben),
dann lasse es mich bitte wissen. Ich lasse mich gerne belehren. :-)

Hans Haesler <hsa@ringier.ch>


als Antwort auf: [#418518]
X