Question

Je suis en train d'automatiser le processus de numérisation des photos / culture dans Photoshop. Je dois scanner 3 photos à la fois, puis utilisez la récolte de Photoshop et aplatissez commande Photos, ce qui crée 3 images séparées. Après cela, je voudrais enregistrer chacune des images nouvellement créées au format PNG.

Je regardais les scripts JSX et ils semblent beaucoup de promesses. Est-ce que je décrit possible d'automatiser dans Photoshop en utilisant JavaScript ou VBScript ou quoi?

Était-ce utile?

La solution 3

En fait, je suis la réponse sur les forums Photoshop sur Adobe. Il se avère que Photoshop CS4 est totalement scriptable via JavaScript, VBScript et est livré avec un vraiment décoiffante IDE Developer, qui a tout ce que vous attendez (débogueur, fenêtre Espion, le codage couleur et plus). J'ai été très impressionné.

Voici un extrait de référence:

  

vous pouvez exécuter le script suivant qui va créer un nouveau dossier de l'un et de lot existant diviser tous les fichiers en les nommant existingFileName # 001.png et les mettre dans le nouveau dossier (modifié)

#target Photoshop
app.bringToFront;
var inFolder = Folder.selectDialog("Please select folder to process"); 
if(inFolder != null){
    var fileList = inFolder.getFiles(/\.(jpg|tif|psd|)$/i);
    var outfolder = new Folder(decodeURI(inFolder) + "/Edited");
    if (outfolder.exists == false) outfolder.create();
    for(var a = 0 ;a < fileList.length; a++){
    if(fileList[a] instanceof File){
        var doc= open(fileList[a]);
        doc.flatten();
        var docname = fileList[a].name.slice(0,-4);
        CropStraighten();
        doc.close(SaveOptions.DONOTSAVECHANGES); 
        var count = 1;
        while(app.documents.length){
            var saveFile = new File(decodeURI(outfolder) + "/" + docname +"#"+ zeroPad(count,3) + ".png");
            SavePNG(saveFile);
            activeDocument.close(SaveOptions.DONOTSAVECHANGES) ; 
            count++;
            }
        }
    }
};
function CropStraighten() {
    function cTID(s) { return app.charIDToTypeID(s); };
    function sTID(s) { return app.stringIDToTypeID(s); };
    executeAction( sTID('CropPhotosAuto0001'), undefined, DialogModes.NO );
};
function SavePNG(saveFile){
    pngSaveOptions = new PNGSaveOptions(); 
    pngSaveOptions.embedColorProfile = true; 
    pngSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE; 
    pngSaveOptions.matte = MatteType.NONE; 
    pngSaveOptions.quality = 1; 
    pngSaveOptions.PNG8 = false; //24 bit PNG
    pngSaveOptions.transparency = true; 
    activeDocument.saveAs(saveFile, pngSaveOptions, true, Extension.LOWERCASE); 
}

function zeroPad(n, s) { 
    n = n.toString(); 
    while (n.length < s) n = '0' + n; 
    return n; 
};

Consultez ici post complet.

Autres conseils

Je viens de découvrir ce script a fait juste le travail pour moi! Il Cultivez automatiquement et redressez la photo et enregistrer chaque résultat dans le répertoire spécifié.

http://www.tranberry.com/photoshop/photoshop_scripting/ PS4GeeksOrlando / IntroScripts / cropAndStraightenBatch.jsx

Enregistrez au niveau local puis exécutez dans le PS => File => Commande => Parcourir

P.S j'ai trouvé dans le commentaire, il a dit que le script peut être exécuté directement par un double-clic de Mac Finder ou l'Explorateur Windows.

essentiel de sauvegarde pour le script

Avez-vous essayé d'utiliser Photoshop Actions? Je fais maintenant pas de la partie de balayage, mais le reste peut être fait par des actions assez facilement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top