Wir haben im Forum regelmäßig die Frage, wie man rausfinden kann, wo im Dokument eine der Farben aus der Farbfelderpalette verwendet wird.
Der Test ob sie überhaupt verwendet wird, ist einfach: versuchen Sie, sie zu löschen. Dann gibt es drei Möglichkeiten:
Für den dritten Fall gibt es jetzt ein Script.
Das ist eine scheinbar einfache Frage, auf die ich bisher immer geantwortet habe: "Na, sooo viel Möglichkeiten gibt es ja nicht. Suchen Sie einfach nach Kontur und Füllung von Objekten und Text. Vier Suchvorgänge..."
Und dann fängt man an, drüber nachzudenken und stellt fest, dass alles viel viel komplizierter ist. Eine Farbe kann stecken in...
So viel also zu "Sind ja nur vier Suchvorgänge." Um den Faktor 10 verschätzt...
Wie immer kann man einem Script beibringen, lästige Arbeiten durchzuführen. Diese Version hat aber noch einige Restriktionen:
Punkt 10 bis 13 der Liste lassen sich nicht mit einem Suchen/Ersetzen Durchgang finden. Da bliebe dem Script nur die Möglichkeit, jeden Absatz im Dokument einzeln zu inspizieren. Da ich davon ausgehe, dass Sie eh mit Absatzformaten arbeiten, wenn Sie Absatzlinien einsetzen, habe ich uns diese Bremse erspart.
Das Script durchsucht nicht Formatdefinitionen. Das könnte ergänzend sinnvoll sein bei Dokumenten, die man nicht selbst erstellt hat, bleibt aber einer späteren Version (if at all) überlassen.
Das Script durchsucht keine Bilder. In EPS oder PDF kann ein Script eh nicht reinschauen, wer das braucht muss sich also eh in den Preflight von Acrobat einarbeiten.
Es findet aber auch keine eingefärbten Graustufenbilder.
"Awww, ist der doof" ?
Nun ja, wenn ich mich darauf beschränke, PageItems zu inspizieren, ist der Code noch halbwegs elegant. Bilder sind keine PageItems, also müsste der Code komplizierter und vor allem langsamer werden, wenn das Script auch Bilder finden soll. Also nein, nicht doof, nur andere Prioritäten...
Wie zeigt man die Fundstellen im Dokument am besten an?
Ich habe mich dafür entschieden, auf einer eigenen Ebene leuchtend rote Rechtecke um die gefundenen Rahmen zu legen. Für gefundenen Text wird der gesamte Textrahmen eingekreist, für Text im Überlauf der letzte Rahmen des entsprechenden Textflusses.

Für diese Rechtecke legt sich das Script eine eigene Farbe an.

Und eine eigene Ebene.

Wollen Sie die roten Rechtecke nach der Inspektion wieder loswerden, löschen Sie einfach die gesamte Ebene.
Und hier das Script: find_color_in_everything
Kommentare
Laufzeitfehler im Script
Das Script möchte unter CS 5.5 nicht mitspielen:
JavaScript Fehler!
Fehlernummer: 55
Fehlerzeichenfolge: Objekt unterstützt Eigenschaft oder Methode pageItems nicht
Engine: main
Datei: ... /find_colour_in_everything.jsx
Zeile 132
Quelle: if ( thing.pageItems.lengh > 0 ) {
Schade :-(
Skript für CS5
Dieses Skript ist superpraktisch - danke dafür.
Gibt es das auch für CS5 - dort bekomme ich eine Fehlermeldung? Auf CS4 hat es problemlos funktioniert.
Danke.
Viele Grüße,
Conny
Hat noch einen kleinen Bug
Hallo Gerald,
ein sehr nützliches Script, auch die Idee mit der
Extra-Ebene finde ich gut gelöst – danke!
Bei mir zeigt es allerdings auch die Farben ”Papier" und ”Ohne" an
obwohl diese nicht im Dokument vorhanden sind. Es werden dann einfach
alle vorhandenen Rahmen rot unterlegt ...
Gruß
Klaus
Fehlermeldung
Hallo Herr Singelmann
Ein super Skript! Ich krieg aber eine Fehlermeldung, und kann mir nicht erklären warum:
"Der Befehl konnte nicht ausgeführt werden, da das Objekt aus einem anderen Dokument oder Arbeitsbereich stammt.
Zeile: 75
Quelle: ap.findTextPreferences.fillColor = swatch;"
Könnnen Sie nachvollziehen, wo das Problem liegt?
Ich arbeite mit InDesign CS3 auf OSX.
Freundliche Grüsse
David B.