Wie kann ich die Cursorkoordinate in Adobe Photoshop zur Verwendung in Action-Skripts extrahieren? [geschlossen]

Was ich in Photoshop (Version CC, aber ich denke, dies gilt für jede Version) tun möchte, ist, einen Punkt mit dem Zählwerkzeug unter der aktuellen Position meiner Maus zu beschriften und ihn mehrmals zu beschriften (für verschiedene Beschriftungen). Ich habe eine Makroaktion, die im Wesentlichen dies tut:

(1) Zur Zählung hinzufügen (unter einem Etikett) (2) Zur zweiten Etikette wechseln (3) Zur Zählung hinzufügen (unter der zweiten Etikette) (4) Zur dritten Etikette wechseln (5) Zur Zählung hinzufügen (unter der dritten Etikette)

Und das Problem ist, dass ich eine Variable im Aktionsskript haben muss, die die aktuelle Position des Cursors (X- und Y-Nummern) auf der Leinwand verwendet, um diese drei Punkte festzulegen, wenn das Makro aktiviert ist. Derzeit kann ich das Skript nur mit konstanten X-, Y-Werten aufzeichnen (derselbe Punkt wird immer wieder beschriftet, wenn ich die aufgezeichnete Aktion abspiele). Ich kann den Code für die Aktion zum Bearbeiten extrahieren (über den Vorschlag von xbytor2 in diesem Forum: https://forums.adobe.com/thread/696989 ) und ich sehe, wohin die Variable gehen kann, ich weiß nur nicht was genau, um die konstanten X-, Y-Werte zu ersetzen, mit denen Photoshop die aktuellen Koordinaten der Maus eingeben kann ...

Irgendwelche Ideen? Sehr geschätzt!!

Könnten Sie Ihren Code posten oder zumindest den Teil, den Sie zum Laufen bringen möchten?
Ja, natürlich! Die Werte, die ich ersetzen möchte, sind 990,5 für X und 421,5 für Y:
-<ActionItem key="TEXT" expandiert="true" name="Zur Zählung hinzufügen" hasDescriptor="true" event="countAdd" identifier="TEXT" dialogOptions="0" withDialog="true" enabled="true" > -<ActionDescriptor key="countAdd" count="2"> <DescValueType.DOUBLETYPE key="1478500384" double="990.5" sym="X " symname="X" id="1478500384"/> <DescValueType.DOUBLETYPE key="1495277600" double="421.5" sym="Y " symname="Y" id="1495277600"/> </ActionDescriptor>
Ich schließe diese Frage, weil sie nichts mit Design zu tun hat und zu alt für eine Migration ist.

Antworten (1)

Möglicherweise gibt es keine einfache Lösung für Ihr Problem. Die Verwendung des ScriptingListener-Plugins kann jedoch hilfreich sein. Es erzeugt Javascript wie folgt:

var list4 = new ActionList();
    var desc33 = new ActionDescriptor();
    var idHrzn = charIDToTypeID( "Hrzn" );
    var idPxl = charIDToTypeID( "#Pxl" );
    desc33.putUnitDouble( idHrzn, idPxl, 148);
    var idVrtc = charIDToTypeID( "Vrtc" );
    var idPxl = charIDToTypeID( "#Pxl" );
    desc33.putUnitDouble( idVrtc, idPxl, 358 );
var idPnt = charIDToTypeID( "Pnt " );
list4.putObject( idPnt, desc33 );

Wie Sie sehen können, ist dies Ihrer Aktions-XML ziemlich ähnlich, daher könnte es hilfreich sein. Obwohl es ein paar Jahre alt ist, ist hier der Link zur Installation und Verwendung von der Adobe-Website: ScriptingListener-Plug-in