Pregunta

Estoy tratando de automatizar el proceso de exploración / Recorte de fotografías en Photoshop. Necesito escanear 3 fotos a la vez, a continuación, utilizar recorte de Photoshop, y enderezamiento de comandos fotos, lo que crea 3 imágenes separadas. Después de eso me gustaría guardar cada una de las imágenes de nueva creación como PNG.

Miré los guiones JSX y parece que una gran promesa. Es lo que he descrito posible automatizar en Photoshop utilizando JavaScript o VBScript o lo que sea?

¿Fue útil?

Solución 3

De hecho, me dio la respuesta en los foros sobre Photoshop de Adobe. Resulta que Photoshop CS4 es totalmente de secuencias de comandos a través de JavaScript, VBScript y viene con un IDE para desarrolladores realmente kick-culo, que tiene todo lo que espera (depurador, ventana, un código de colores y más ver). Yo estaba totalmente impresionado.

A continuación se presenta un extracto de referencia:

  

puede ejecutar la siguiente secuencia de comandos que va a crear una nueva carpeta de la existente y dividir por lotes todos los archivos nombrarlos existingFileName # 001.png y ponerlos en la nueva carpeta (editado)

#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; 
};

aquí por completo puesto.

Otros consejos

acabo de encontrar este script acaba de hacer el trabajo para mí! Es recorte automáticamente y enderezar la foto y guardar cada resultado al directorio especificado.

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

Copiar al local, entonces ejecutarlo en el PS => Archivo => Comando => Examinar

P.S he encontrado en el comentario que dice el guión puede ser ejecutado directamente por un doble clic desde el Finder de Mac o el Explorador de Windows.

quid de copia de seguridad para el script aquí

¿Ha intentado utilizar Acciones de Photoshop? No hago ahora sobre la parte de exploración, pero el resto todo se puede hacer por las acciones con bastante facilidad.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top