Ausgabe
Ich schreibe ein benutzerdefiniertes Skript für Photoshop, um die Stapelverarbeitung von Bildern zu handhaben. Ich habe zwei Eingabeordner und einen Ausgabeordner, die ich angeben muss. Im Moment verwende ich so etwas, um meine Ordner auszuwählen:
var inputFolder = Folder.selectDialog("Select a folder of images to process");
Da ich auf einem Server mit einer ziemlich tiefen Ordnerhierarchie arbeite, kann es sehr mühsam sein, über das Dropdown-Menü auszuwählen, das Photoshop mir in diesem Dialogfeld anzeigt.
Es wäre so viel einfacher, einen Ordnerauswahldialog mit einer Adressleiste und einem Schnellzugriffsbereich wie diesem zu haben:
Alle anderen PS-Skripte, in denen ich herumgegraben habe, verwenden die Folder.selectDialog
Methode, um Dateipfade auf eine Variable festzulegen. Gibt es dafür einen Grund? Wenn nicht, wie kann ich Photoshop dann den zweiten Stil des Ordnernavigationsdialogs anweisen?
Lösung
Es scheint, dass Adobe dieses Dialogfeld nicht als Option zur Ordnerauswahl unterstützt.
There was a similar thread to this posted on the Adobe forums where a workaround was suggested:
https://forums.adobe.com/thread/1094128
The solution that was suggested is to use a saveDialog
function instead of selectFolder
. This gives you the folder dialog that we want, but comes with the downside of having to type a dummy name into the filename path. It also says “Save As” on the top of the dialog box, which is confusing.
Here’s what was offered:
by lilsmokie on Nov 8, 2012 2:19 PM
var dskTop = Folder.desktop; var dskPth = String(dskTop); var newSpot = new File(dskPth+"/poop"); var selectedFolder = newSpot.saveDlg('Select Destination Folder'); var illFilePath = selectedFolder.path; alert(illFilePath);
This opens the dialog at the desktop. Then put “poop” or whatever you
like in the text field. There the user can navigate to where ever.
When they it save illFilePath will have the folder path. Not perfect
but its close enough for me right now.
Ich habe auch entdeckt, dass ich den Startort von festlegen kann, indem ich stattdessen selectDialog
Folgendes selectDlg
verwende:
var outputFolder = Folder(app.activeDocument.path).selectDlg("Select a folder to output images to:");
Dies gibt eine gewisse Kontrolle über den Startort, sodass der Benutzer nicht durch eine Million Dropdowns klicken muss.
Beantwortet von – Dig_Dig_Dig
Antwort geprüft von – Pedro (FixError Volunteer)