[GastForen Programme Print/Bildbearbeitung Adobe InDesign Script Farben austauschen?

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Script Farben austauschen?

mel_123
Beiträge gesamt: 104

19. Jun 2006, 10:39
Beitrag # 1 von 6
Bewertung:
(3743 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo alle,

ich bin da noch an dem Thema "Farben austauschen". Vielleicht interessiert es auch andere InDesign-User, die Quark-Dateien konvertieren.

Die konvertierten Quark-Doks enthalten ja ein Schwarz (100% K), das nicht ueberdruckt - im Gegensatz zum InDesign-Schwarz (das mit den eckigen Klammern), das ueberdruckt. Ich wuerde gern alle Schwarz (100K), durch das InDesign-Schwarz ersetzen lassen. Bei der Gelegenheit auch gern alle Weiss (0c0m0y0k) durch das InDesign-Paper.

Um eine Zitat zu verwenden "Erde an Martin" - hoerst Du mich ;-)

Vielen Dank

Melanie
X

Script Farben austauschen?

Martin Fischer
  
Beiträge gesamt: 12891

19. Jun 2006, 10:56
Beitrag # 2 von 6
Beitrag ID: #235061
Bewertung:
(3735 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Melanie,

da hast Du aber Glück!
Erst letzte Woche habe ich für einen Bekannten, den die vielen Kopien von einer Farbfläche mit identischen Farbwerten gestört haben, ein solches Skript gemacht.

Code
//colorValueDupesRemove.jsx 
//DESCRIPTION: Löscht Duplikate von definierten Grundfarben (myBaseC)

var myBaseC = ["Black", "Paper"];
var myColors = app.documents[0].colors;
var theDelColors = new Array;
for (oneBase = 0; oneBase < myBaseC.length; oneBase++)
{
try
{
app.documents[0].colors.item(myBaseC[oneBase]).name;
for (oneCol = myColors.length-1; oneCol >= 0; oneCol--)
{
if (
(myColors[oneCol].colorValue.join("-") == app.documents[0].colors.item(myBaseC[oneBase]).colorValue.join("-")) &&
(myColors[oneCol].name != app.documents[0].colors.item(myBaseC[oneBase]).name) &&
(myColors[oneCol].name != "Registration") &&
(myColors[oneCol].name != "Black") &&
(myColors[oneCol].name != "Paper")
)
{
theDelColors.push("\"" + myColors[oneCol].name + "\""); //Farbname sammeln für die Anzeige am Ende
myColors[oneCol].remove(app.documents[0].swatches.item(myBaseC[oneBase])); // Farbe löschen/ersetzen durch Grundfarbe
}
}
}
catch(error)
{alert(error + "\r" + myBaseC[oneBase])}
}
if (theDelColors.length > 0)
alert("Gelöschte Farben:\r" + theDelColors.join("\r"))
else alert("Fertig");

Die Grundfarben, auf deren Farbwerte hin die anderen Farben geprüft und ggf. gelöscht werden sollen, stehen in dem Array myBaseC (hier "Black" und "Paper"). Das Skript prüft also alle Farben, ob sie den Farbwert von Black oder Paper haben. Wenn ja, dann wird die Farbe gelöscht und durch Black oder Paper ersetzt. Am Ende erfolgt eine Meldung über die gelöschten Farben.

Statt "Black" oder "Paper" oder zu "Black" und "Paper" können in myBaseC auch andere Farben eingetragen werden.


Übrigens hat mich GS vor der Verzweiflung an den swatches mit den fehlenden Farbwerten bewahrt, indem er mir den Tip zur Arbeit mit colors gegeben hat.


Ein weiteres Skript, das Duplikate ala "Schwarz Kopie", "Schwarz Kopie 2" ... auf die Grundfarbe (z.B. Schwarz) zurückführt, ist das Skript [b]Merge Down Swatch Dupes von [b]Dave Saunders: http://www.adobeforums.com/...webx?14@@.3bbe8566/0:

Code
//DESCRIPTION: Merge Down Swatch Dupes 
if (app.documents.length > 0)
{
myTarg = app.activeDocument;
}
else
{
myTarg = app;
}

var mySwatches = myTarg.swatches;
var myNames = mySwatches.everyItem().name;
for (var j = myNames.length - 1; j >= 0; j--)
{
myParts = myNames[j].split(" ");
if (myParts.length == 1)
{
continue
}
if (Number(myParts.pop()) == Number.NaN)
{
continue
}
var mySwatch = myTarg.swatches.item(myParts.join(" "));
if (mySwatch == null)
{
continue
}
mySwatches[j].remove(mySwatch);
}



als Antwort auf: [#235056]
(Dieser Beitrag wurde von Martin Fischer am 19. Jun 2006, 10:56 geändert)

Script Farben austauschen?

mpeter
Beiträge gesamt: 4631

19. Jun 2006, 11:47
Beitrag # 3 von 6
Beitrag ID: #235080
Bewertung:
(3722 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
... und ganz ohne Script. Die Farbe löschen und durch die entprechende ersetzen.


als Antwort auf: [#235056]

Script Farben austauschen?

Martin Fischer
  
Beiträge gesamt: 12891

19. Jun 2006, 11:58
Beitrag # 4 von 6
Beitrag ID: #235089
Bewertung:
(3720 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Magnus,

freilich, geht das auch manuell.
Das Skript macht ja nichts anderes, als was Du schreibst.

Aber wenn Du Dich bei - sagen wir 15 Farben - durch 13, die nicht die Farbwerte als Namen tragen, durchklicken mußt, um zu prüfen, welche Farben mit doppelten Farbwerten vorkommen, dann könnte das durchaus zu einem Verwirrspiel werden.

Und bei so riskanten Manövern wie dem Löschen von irgendwas traue ich meinen Skripten bisweilen mehr zu als mir. ;-)


als Antwort auf: [#235080]

Script Farben austauschen?

mpeter
Beiträge gesamt: 4631

19. Jun 2006, 12:14
Beitrag # 5 von 6
Beitrag ID: #235093
Bewertung:
(3709 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Klar, bei mehr als zwei Farben ist das mit Script schon geschmeidiger :-) Aber hier geht es – so wie ich das sehe – um konvertierte QXP-Docs. Da geht es nur um Weiß und Schwarz, das ist doch überschaubar und mit Script geht’s da auch nicht schneller.


als Antwort auf: [#235089]

Script Farben austauschen?

mel_123
Beiträge gesamt: 104

19. Jun 2006, 23:12
Beitrag # 6 von 6
Beitrag ID: #235224
Bewertung:
(3686 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo alle,

erstmal vielen Dank fuer die schnelle Hilfe. Ich bin sehr froh auf so ein Script zurueckgreifen zu koennen, denn es sind schon einige Quark-Dateien, die damit korrigiert werden sollen, da lohnt es sich schon.

:-)

Melanie


als Antwort auf: [#235093]
X