Hallo Mike,
ja, wenn ich das Script mit InDesign CS entwickelt hätte, dann wäre die Chance grösser, dass
es unverändert mit CS2 funktionieren würde. Denn die Umwege, welche mit CS notwendig sind,
klappen auch. Umgekehrt, muss man einiges ändern.
Anstelle von[nbsp] ...
---
[#0000FF]make[/#] [#0000FF]rectangle[/#] [#0000FF]at[/#] [#0000FF]beginning[/#] [#0000FF]with properties[/#] [nbsp]¬
[nbsp] [nbsp] [nbsp] {[#0000FF]geometric bounds[/#]:{ty1, x1, (ty1 + boxH), (x1 + boxW)} [nbsp]¬
[nbsp] [nbsp] [nbsp] [nbsp] [nbsp] [nbsp] , [#0000FF]fill color[/#]:fillColor, [#0000FF]fill tint[/#]:boxSh, [#0000FF]label[/#]:"blackBox"}
---
... muss man zuerst einen Rahmen erzeugen und dann dessen Properties ändern:
---
[#0000FF]set[/#] newFrame [#0000FF]to[/#] [#0000FF]make[/#] [#0000FF]rectangle[/#]
[#0000FF]set[/#] [#0000FF]properties[/#] [#0000FF]of[/#] newFrame [#0000FF]to[/#] {[#0000FF]geometric bounds[/#]:{ty1, x1, (ty1 + boxH), (x1 + boxW)} [nbsp]¬
[nbsp] [nbsp] [nbsp] , [#0000FF]fill color[/#]:fillColor, [#0000FF]fill tint[/#]:boxSh, [#0000FF]stroke color[/#]:noColor, [#0000FF]label[/#]:"blackBox"}
---
Das 'at beginning' kann man in beiden Versionen weglassen. Aber die Farbe der Kontur muss
auf "Keine" gesetzt werden, sonst kann eine Konturvorgabe wirksam werden. Der Variablen 'noColor'
wird vorgängig die Referenz der Farbe "Keine" zugewiesen:
---
[#0000FF]set[/#] noneID [#0000FF]to[/#] ([#0000FF]id[/#] [#0000FF]of[/#] [#0000FF]every[/#] [#0000FF]swatch[/#] [#0000FF]whose[/#] [#0000FF]name[/#] [#0000FF]is[/#] "None")
[#0000FF]set[/#] noColor [#0000FF]to[/#] [#0000FF]swatch[/#] [#0000FF]id[/#] noneID
---
Damit die Farben sichtbar zugewiesen werden, muss mit InDesign CS eine Referenz zum entsprechenden
'swatch' definiert sein (das direkte Zuweisen gelingt nur mit CS2):
---
[#0000FF]if[/#] colorName [#0000FF]is[/#] "Schwarz" [#0000FF]then[/#]
[nbsp] [nbsp] [nbsp] [#0000FF]set[/#] fillColor [#0000FF]to[/#] [#0000FF]swatch[/#] "Black" [#0000FF]of[/#] [#0000FF]document[/#] 1
[#0000FF]else[/#] [#0000FF]if[/#] colorName [#0000FF]is[/#] "Papier" [#0000FF]then[/#]
[nbsp] [nbsp] [nbsp] [#0000FF]set[/#] fillColor [#0000FF]to[/#] [#0000FF]swatch[/#] "Paper" [#0000FF]of[/#] [#0000FF]document[/#] 1
[#0000FF]else[/#]
[nbsp] [nbsp] [nbsp] [#0000FF]set[/#] fillColor [#0000FF]to[/#] [#0000FF]swatch[/#] colorName [#0000FF]of[/#] [#0000FF]document[/#] 1
[#0000FF]end[/#] [#0000FF]if[/#]
---
Wie vorstehend gezeigt, müssen der Name und die Referenz zwei verschiedenen Variablen zugewiesen
sein. Sonst wird beim Test, welcher feststellt, ob die gespeicherte Farbe im Dokument existiert,
immer die Default-Farbe "Schwarz" zugewiesen und erscheint anstelle der erwarteten im Dialog.
Ich stelle Dir die geänderte Version für InDesign CS zu.
Auf Deine Fragen des letzen Eintrags werde ich später eingehen.
Gruss, Hans