2017-04-14 3 views
0

J'écris un script personnalisé pour Photoshop pour traiter le traitement par lots des images. J'ai deux dossiers d'entrée et un dossier de sortie que je dois spécifier. En ce moment je suis en utilisant quelque chose comme ceci pour sélectionner mes dossiers:selectDialog avec la barre d'adresse au lieu de dropdown avec le script Photoshop

var inputFolder = Folder.selectDialog("Select a folder of images to process"); 

Parce que je travaille sur un serveur avec une hiérarchie de dossiers assez profonde, il peut être une vraie douleur pour sélectionner dans le menu déroulant que Photoshop me présente dans ce dialogue.

My target folder is actually much deeper than this...

Il serait tellement plus facile d'avoir une boîte de dialogue de sélection de dossier avec une barre d'adresse et le panneau d'accès rapide comme celui-ci:

So much easier to navigate!

Tous les autres scripts PS que j'ai été En utilisant la méthode Folder.selectDialog pour définir les chemins d'accès à une variable. Y a-t-il une raison à cela? Si non, alors comment puis-je demander à Photoshop le deuxième style de dialogue de navigation dans les dossiers?

Répondre

1

Adobe ne prend pas en charge cette boîte de dialogue comme option de sélection de dossier.

Il y avait un fil semblable à celui affiché sur les forums Adobe où une solution a été proposée:

https://forums.adobe.com/thread/1094128

La solution qui a été proposée est d'utiliser une fonction saveDialog au lieu de selectFolder. Cela vous donne la boîte de dialogue de dossier que nous voulons, mais a l'inconvénient de devoir taper un nom fictif dans le chemin du nom de fichier. Il dit également "Enregistrer sous" en haut de la boîte de dialogue, ce qui est source de confusion.

est ici ce qui a été offert:

par lilsmokie le 8 novembre 2012 14h19

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); 

Ceci ouvre le dialogue sur le bureau. Ensuite, mettez "merde" ou tout ce que vous comme dans le champ de texte. Là, l'utilisateur peut naviguer vers où. Quand ils sauveront illFilePath aura le chemin du dossier. Pas parfait mais c'est assez proche pour moi en ce moment.

J'ai aussi découvert que je peux définir l'emplacement de départ de la selectDialog en utilisant selectDlg à la place:

var outputFolder = Folder(app.activeDocument.path).selectDlg("Select a folder to output images to:"); 

Cela donne un certain contrôle sur l'emplacement de départ afin que l'utilisateur n'a pas à cliquez à travers un million de listes déroulantes.