[GastForen Programmierung/Entwicklung AppleScript Indesign CS, Überdrucken per Script

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

Indesign CS, Überdrucken per Script

swish
Beiträge gesamt: 75

26. Aug 2005, 09:04
Beitrag # 1 von 11
Bewertung:
(2595 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Forummembers und hallo Hans !

ich habe einen riesigen Aufbau in InDesign bekommen und habe in der Dokumentchronik gesehen, dass die Jungs (oder Mädelz) von der Werbeagentur einfach auf den "alten" Quark Daten aufgebaut haben. (Dokumentchronik = mit gedrückter Apfeltaste auf "über InDesign" klicken).

Nun hatten wir ja zu Quark Zeiten die wirklich gute Funktion, einstellen zu können, welche Farbe allgemein Überdruckt, Ausspart oder Über-/Unterfüllt. Bei InDesign muss man (meines Wissens) jedes einzelne Überdrucken von nichtschwarzen Farben per Attribut-Menü vornehmen.

Mein Aufbau hat nun eine Sonderfarbe namens "Texthinterleger" und es gibt Texte, Rahmen, Bilder und Boxes in dieser Farbe. Laut Separationsvorschau sehe ich auch, dass keines dieser Objekte Überdruckt. Bin also dabei alles von Hand zu ändern  :(

Man kann im InDesign doch bestimmt per Script steuern, dass alles in einer bestimmten Farbe das Attribut "Überdrucken" bekommt, oder ?

Es müsste jedoch zwischen Kontur und Inhalt unterschieden werden. Teilweise gibt es z.B. farbige Boxes mit Texthinterleger-Kontur.

Wenn das ganze nicht so einfach ist, würde mir für's erste auch ein Ansatz in dieser Richtung reichen:

tell application "Adobe InDesign CS"
  tell document 1
        set overprint of every text whose colour is "Texthinterleger" to true
  end tell
end tell

Ich wünschte, es wäre so einfach :wink:

Beste Grüße,

Stephan
X

Indesign CS, Überdrucken per Script

Hans Haesler
  
Beiträge gesamt: 5818

26. Aug 2005, 10:52
Beitrag # 2 von 11
Beitrag ID: #420085
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

nein, so einfach ist es nicht. Dein 'overprint' wird als Variable erkannt  (statt als Ausdruck
des Programms). Es muss 'overprint fill' heissen (und 'overprint stroke' für Konturen).
Hier schon mal der Code, welcher sich um den Text kümmert.

Die Farbe muss als Objekt definiert sein und das Script muss jeden Buchstaben
ansprechen. Mit 'every text' geht es nicht.
---
tell application "InDesign CS"
   tell document 1
      set myColor to swatch "Texthinterleger"
      try
         tell every story
            set overprint fill of every character whose fill color is myColor to true
         end tell
      end try
   end tell
end tell

---
Gruss, Hans


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

Hans Haesler
  
Beiträge gesamt: 5818

26. Aug 2005, 11:04
Beitrag # 3 von 11
Beitrag ID: #420086
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

und hier ist der Code ergänzt, damit auch Rahmen und Linien erfasst werden:
---
tell application "InDesign CS"
   tell document 1
      set myColor to swatch "Texthinterleger"
      try
         tell every story
            set overprint fill of every character whose fill color is myColor to true
         end tell
      end try
      try
         tell every page item
            set overprint fill whose fill color is myColor to true
         end tell
      end try
      try
         tell every page item
            set overprint stroke whose stroke color is myColor to true
         end tell
      end try
   end tell
end tell

---
Gruss, Hans


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

swish
Beiträge gesamt: 75

26. Aug 2005, 11:14
Beitrag # 4 von 11
Beitrag ID: #420087
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen Dank Hans,

kannst Du mir auch noch sagen, wie meine Farbe zu einem Objekt wird ? Ich habe den Texthinterleger ganz normal per Farbfeld als Sonderfarbe angelegt. Wenn ich das Skript ausführe, ändert sich nur leider nicht der Überdruckenmodus der Texte.

Gruß,

Stephan


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

Hans Haesler
  
Beiträge gesamt: 5818

26. Aug 2005, 11:31
Beitrag # 5 von 11
Beitrag ID: #420088
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

ich wollte sagen "eine Referenz". So ähnlich wie ein Alias. Das wird so erreicht:
Code
[b]set myColor [b]to swatch "Texthinterleger" 

Wenn der Name der Farbe direkt eingesetzt wird ...
Code
[b]set overprint fill [b]of every character [b]whose fill color [b]is swatch "Texthinterleger" [b]to true 

... funktioniert es nicht.

Ich hatte in meinem Testdokument die Farbe "Texthinterleger" im Vierfarb-Modus erzeugt.
Aber auch nach dem Umwandeln in eine Sonderfarbe klappt es bestens.

Wie überprüfst Du das Überdrucken? Ich öffne dazu die Palette "Aperçu des séparations",
(ich weiss leider nicht, wie dies auf deutsch übersetzt worden ist), wähle den Artikel
"Séparations" und z.B. den Magenta-Auszug. Vor dem Ausführen des Scripts ist der Text
ausgespart. Nachher ist die Fläche intakt, der Text überdruckt.

Gruss, Hans


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

swish
Beiträge gesamt: 75

27. Aug 2005, 15:54
Beitrag # 6 von 11
Beitrag ID: #420089
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo nochmal,

in Deutsch heißt diese Palette "Ausgabevorschau"->"Separationen", bzw. Separationsvorschau.

Ich habe ein Testdokument angelegt und dort funktioniert Dein Script hervoragend ! Bei meinem Katalog leider nicht. Mein erste Gedanke war, dass es vielleicht an den eingebauten Logos, die ebenso doe Farbe "Texthinterleger" verwenden liegt. Nachdem ich diese herausgeworfen habe und sicherheitshalber auch noch alle Bilder entfernt habe, funktionierte es allerdings immer noch nicht ?!!?

Habe dann mal einen anderen Weg probiert:

tell application "InDesign CS"
 tell document "Unbenannt-2"
  set myColor to swatch "Texthinterleger"
  repeat with i from 1 to the count of stories
   tell story i
    set (overprint fill of every character whose fill color is myColor) to true
   end tell
  end repeat
 
 end tell
end tell

Die try-Blöcke habe ich absichtlich herausgelassen. Hier kommt dann allerdings diese Meldung:

 set overprint fill of every character of story 1 of document "Unbenannt-2" whose fill color = {color id 647 of document "Unbenannt-2", tint id 658 of document "Unbenannt-2"} to true
  "„InDesign CS“ hat einen Fehler erhalten: „overprint fill of every character of story 1 of document \"Unbenannt-2\" whose fill color = {color id 647 of document \"Unbenannt-2\" of application \"InDesign CS\", tint id 658 of document \"Unbenannt-2\" of application \"InDesign CS\"}“ kann nicht als „true“ gesetzt werden."

Was hat es mit dem Tint auf siche ? Ist das die Deckkraft ?

Gruß,

Stephan


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

Hans Haesler
  
Beiträge gesamt: 5818

27. Aug 2005, 16:21
Beitrag # 7 von 11
Beitrag ID: #420090
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

weisst Du was? Am einfachsten ist es, wenn Du mir eine abgespeckte Version (nur eine
Seite, ohne Bilder) des Katalog-Dokuments schickst. Ich muss allerdings gleich weg und
werde nicht vor Sonntagmorgen antworten können.

Ein "tint" ist ein definierter Prozentwert einer angelegten Farbe. Er erscheint als Artikel
in der Farbenpalette, hat den gleichen Namen, ergänzt mit der Prozentzahl.

Gruss, Hans


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

swish
Beiträge gesamt: 75

27. Aug 2005, 16:29
Beitrag # 8 von 11
Beitrag ID: #420091
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen Dank für das Angebot!

eMail ist unterwegs.

Schönes Wochenende,

Stephan


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

Hans Haesler
  
Beiträge gesamt: 5818

28. Aug 2005, 07:46
Beitrag # 9 von 11
Beitrag ID: #420092
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

die Lösung ist, im Befehl, welcher der Variablen 'myColor' die Referenz zur gewünschten Farbe
zuweist, das 'swatch' durch 'color' zu ersetzen. Damit werden sowohl der "swatch" als auch der
(gleichnamige) "tint" abgedeckt:
Code
[b]set myColor [b]to color "Texthinterleger" 

Übrigens: Der "tint" von 80% des "swatches" "Texthinterleger" ist nur auf die Seitennummer
angewendet. Beim Kapiteltitel hingegen, wurde der Tonwert über das Textfeld direkt erzeugt ...

Gruss, Hans


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

swish
Beiträge gesamt: 75

29. Aug 2005, 07:45
Beitrag # 10 von 11
Beitrag ID: #420093
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Super! Es funktioniert jetzt einwandfrei!

Ich verstehe nur noch nicht so ganz, wieso das Skript mit dem Aufruf "swatch" bei der Testseite funktionierte, aber im Dokument nicht.


als Antwort auf: [#420084]

Indesign CS, Überdrucken per Script

Hans Haesler
  
Beiträge gesamt: 5818

29. Aug 2005, 08:12
Beitrag # 11 von 11
Beitrag ID: #420094
Bewertung:
(2594 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

super, dass es klappt! :-)

Sehr wahrscheinlich ist im Testseiten-Dokument nur ein "swatch" vorhanden, aber kein
gleichnamiger "tint". Letzterer muss nicht einmal einem Objekt zugewiesen sein.
Sobald so ein "tint" definiert ist, muss man anstelle von "swatch" eben "color" verwenden.
Gut zu wissen.

Gruss, Hans


als Antwort auf: [#420084]
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
01.12.2022

Online
Donnerstag, 01. Dez. 2022, 10.00 - 10.45 Uhr

Webinar

Die drei ColorLogic-Programme ZePrA, CoPrA und ColorAnt sind in neuen Versionen mit vielen neuen Funktionen im Jahr 2022 veröffentlich worden oder werden in Kürze veröffentlicht (ColorAnt 9). In unserem ca. 45 minütigen kostenlosen Webinar zeigen wir Ihnen einige dieser neuen Funktionen mit dem Schwerpunkt auf Automatisierung und Produktivitätssteigerungen.

Ja

Organisator: Impressed GmbH

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=311

ColorLogic Update-Webinar ZePrA 10, CoPrA 9 und ColorAnt 9
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/