[FIXED] Photoshop JavaScript erhalten Sie ausgewähltem Pathitem?

Ausgabe

Mein Dilemma liegt in den pathItems (nicht im Dateipfad, sondern in den Vektorpfaden auf der Registerkarte neben den Ebenen).

Ich möchte, dass mein Skript darauf reagiert, welcher von mehreren Pfaden gerade ausgewählt ist. Gibt es eine Möglichkeit, den Index oder Namen des aktuell ausgewählten Pfads in Photoshop über JavaScript (alternativ über etwas anderes) abzurufen?

Ich habe keine Dokumentation dazu gefunden und möchte sicherstellen, dass ich nicht nur etwas Offensichtliches übersehen habe.

Lösung

Hier sind zwei Funktionen, um den pathItem-Index und -Namen zu erhalten. Wenn kein Pfad ausgewählt ist, getPathIndex()wird -1 zurückgegeben, getPathName()ein Fehler ausgelöst und wie gewünscht behandelt. Beachten Sie, dass, wenn mehrere Pfade ausgewählt sind, die Funktion nur auf dem letzten funktioniert: Ich glaube nicht, dass es möglich ist, mehrere ausgewählte Pfade zu durchlaufen.

function getPathIndex()
{
  var ref = new ActionReference();
  ref.putProperty(charIDToTypeID("Prpr"), charIDToTypeID("TrgP"));
  ref.putEnumerated(charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
  var desc = executeActionGet(ref);
  return desc.getInteger(charIDToTypeID("TrgP"));
}

function getPathName()
{
  var ref = new ActionReference();
  ref.putProperty(charIDToTypeID("Prpr"), charIDToTypeID("PthN"));
  ref.putEnumerated(charIDToTypeID('Path'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt'));
  try
  {
    var desc = executeActionGet(ref);
  }
  catch (e)
  {
    // handle error
    return '';
  }
  return desc.getString(charIDToTypeID("PthN"));
}


Beantwortet von –
Sergey Kritskiy


Antwort geprüft von –
Clifford M. (FixError Volunteer)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like