Kann eine Photoshop-Aktion oder ein Skript ein Farbfeld laden/speichern und daraus eine Farbe auswählen

Ich habe mich gefragt, ob es für eine Photoshop-Aktion möglich ist, Vorder- oder Hintergrundfarbe aus dem Farbfeld auszuwählen. Ich habe es versucht, aber anstatt aus dem Muster auszuwählen, nimmt es immer einen festen Wert. Ich versuche das Skript, um nacheinander Farbe aus dem Farbfeld auszuwählen. Wenn das Muster beispielsweise 5 Farben enthält, sollte es die 1., 2. ... bis zur 5. Farbe auswählen.

Wie einfach / oft müssen Sie die Farben aktualisieren, die Sie durchlaufen möchten? Angesichts der Tatsache, dass es so aussieht, als ob es schwierig, wenn nicht sogar unmöglich ist, eine Musterfarbe zu bekommen, habe ich dieses Skript als eine Art Test erstellt. . Wenn Sie es noch nicht wussten, können Sie eine Tastenkombination zum Starten eines Skripts festlegen.

Antworten (1)

Das sollte man per Script machen können. Tom Krcha hat ein Skript, das Sie möglicherweise anpassen können (Add A Color To Swatches Panel In Photoshop Using ExtendScript/JSX):

var red = 255;
var green = 0;
var blue = 0;
var name = "Red";

var addColorDescriptor = new ActionDescriptor();
// Get reference to Swatches panel
var swatchesPanelReference = new ActionReference();
swatchesPanelReference.putClass(stringIDToTypeID('colors'));
addColorDescriptor.putReference(stringIDToTypeID('null'), swatchesPanelReference);
// Setup a swatch and give it a name
var descriptorSwatch = new ActionDescriptor();
descriptorSwatch.putString( stringIDToTypeID('name'), name);
// Add RGB color information to the swatch
var descriptorColor = new ActionDescriptor();
descriptorColor.putDouble(stringIDToTypeID('red'), red);
descriptorColor.putDouble(stringIDToTypeID('grain'), green); // grain = green
descriptorColor.putDouble(stringIDToTypeID('blue'), blue);
// Add RGB to the swatch
descriptorSwatch.putObject( stringIDToTypeID('color'), stringIDToTypeID('RGBColor'), descriptorColor);
// Add swatch to the color descriptor
addColorDescriptor.putObject( stringIDToTypeID('using'), stringIDToTypeID('colors'), descriptorSwatch);
// Send to Photoshop
executeAction( stringIDToTypeID('make'), addColorDescriptor, DialogModes.NO);

Siehe: http://tomkrcha.com/?p=3890

Danke sehr ! Wie kann ich mit einem Skript Farbe aus dem Muster auswählen?
@SM Das Skript: "Fügen Sie dem Farbfeldbedienfeld in Photoshop eine Farbe hinzu". Ich bin mir ziemlich sicher, dass KJP dieses Skript als Ausgangspunkt gemeint hat. Es ist keine direkte Lösung, da es das Gegenteil von dem bewirkt, was Sie wollen. Obwohl ich fragen muss. Nehmen wir an, Sie haben 10 Muster. Wie haben Sie sich entschieden, welches Muster Sie verwenden möchten?
@Joonas. Danke für deine Antwort. Was ich wirklich versuche zu erreichen, ist, Farben nacheinander als Vordergrund auszuwählen. Nehmen wir an, ich habe 10 Farben in Farbfeldern. Ich versuche, den 1., 2., 3. ... bis zum 10. auszuwählen. Gibt es einen Weg ?
@SM Du meinst so: einmal einen Hotkey drücken: Swatch #1 wird als Vordergrundfarbe ausgewählt, zum zweiten Mal einen Hotkey drücken: Swatch #2 wird als Vordergrundfarbe ausgewählt ... etc?
@Joonas Ja. Wie eine Schleife. Es wählt Muster Nr. 1, führt eine Operation aus, und wählt Muster Nr. 2.. und fährt fort, bis es alle Farben in den Mustern ausgewählt hat.
@SM Basierend auf etwas Googeln scheint es, dass das Auswählen einer Farbe aus dem Farbfeldbedienfeld nicht so einfach ist wie bei Indesign oder Illustrator. Ich war ziemlich zuversichtlich, dass Sie das tun könnten, aber wenn ich mir den Code ansehe, den Script Listener ausgibt, wenn Sie eine Farbe aus Farbfeldern auswählen, glaube ich nicht, dass dies möglich ist. Der Skript-Listener mag nicht pick a color from swatch 3oder so etwas. Es wählt tatsächlich nur statische RGB-Werte aus, ähnlich wie bei der Verwendung der Farbauswahl für alles. Ich könnte falsch liegen. Ich weiß zumindest nicht, wie ich das machen soll.
Basierend auf etwas mehr Googeln würde ich vorschlagen, sich die Skripte anzusehen, die in der xtools-Bibliothek von xbytor verfügbar sind: sourceforge.net/projects/ps-scripts/files/xtools/v2.2betas , insbesondere das ColorSwatches-Skript. Könnte helfen. Viel Glück.
Meine Meinung dazu ist im Moment, dass es einfacher wäre, eine Ersatzerweiterung für Farbfelder für diesen Zweck zu erstellen :)=
@Joonas - ich stimme zu :)