Modérateur: Modérateurs
// MAC Finder ou WINDOWS Explorer, on autorise le double clic et on fait passer Photoshop au 1er plan
#target photoshop
app.bringToFront();
var prefixeTemp="@";
var extension=".psd";
// On sélectionne le dossier contenant les images à traiter
// On met toutes les images à traiter dans un tableau
var inputFolder = Folder.selectDialog("Sélectionnez le dossier contenant les images à traiter : ");
var outputFolder = new Folder(inputFolder+"/temp");
if(!outputFolder.exists) outputFolder.create(); // S'il n'existe pas, on crée un sous-dossier pour les images pré-traitées
var fileList = inputFolder.getFiles("*.jpg");
// et on traite une à une toutes les images
for (var i= 0;i<fileList.length;i++) {
//for (var i= 0;i<1;i++) {
var docRef = open(fileList[i]);
var docName = docRef.name;
var docName = docName.substring( 0, docName.indexOf('.') );
var docPath = docRef.path;
var largeur = app.activeDocument.width;
var hauteur = app.activeDocument.height;
var resolution = app.activeDocument.resolution;
// Si l'image est verticale, on charge le cadre vertical, sinon l'horizontal
if(hauteur>largeur){
// Photo verticale
var cadreV = File(docPath + "/cadreV.psd")
open(cadreV);
}
else{
// Photo horizontale
var cadreH = File(docPath + "/cadreH.psd")
open(cadreH);
}
// On copie le calque de la photo dans le cadre
var result = copierColler();
// On sauvegarde l'image au format PSD pour pouvoir revenir dessus
var psd_Options = new PhotoshopSaveOptions(); // [PhotoshopSaveOptions]
psd_Options.layers = true; // préserve les calques
psd_Options.embedColorProfile = true; // préserve le profil colorimétrique
psd_Options.annotations = true; // préserve les annotations
psd_Options.alphaChannels = true; // préserve les canaux alpha
psd_Options.spotColors = true; // préserve les encres
// Sauvegarde au format PSD
docRef.saveAs( File(outputFolder + '/' + prefixeTemp + docName + extension ), psd_Options, true );
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
var result = fermeture();
}
//++++++++++++++++ COPIER-COLLER ++++++++++++++++
function copierColler(){
var photo = app.documents[0]; // La photo
var cadre = app.documents[1]; // Le cadre
app.activeDocument = app.documents[0];// On donne le focus à la photo
app.activeDocument.selection.selectAll(); // On sélectionne la photo
app.activeDocument.selection.copy(); // On la copie dans le presse-papiers
app.activeDocument = app.documents[1];// On donne le focus au cadre
app.activeDocument.paste(); // On copie la photo sur le cadre
app.activeDocument.activeLayer.move(app.activeDocument, ElementPlacement.PLACEATEND )// On fait passer la photo en arrière plan
}
function fermeture(){
app.activeDocument = app.documents[0];// On donne le focus à la photo
app.activeDocument.close();
}
// MAC Finder ou WINDOWS Explorer, on autorise le double clic et on fait passer Photoshop au 1er plan
#target photoshop
app.bringToFront();
// On sélectionne le dossier contenant les images à traiter
// On met toutes les images prétraitées dans un tableau
var inputFolder = Folder.selectDialog("Sélectionnez le dossier contenant les images à traiter. Il s'agit du dossier initial, à ne pas confondre avec celui des images pré-traitées : ");
inputFolder = Folder(inputFolder +="/temp");
var fileList = inputFolder.getFiles("*.psd");
// et on traite une à une toutes les images
for (var i= 0;i<fileList.length;i++) {
var docRef = open(fileList[i]);
var docName = docRef.name;
var docName = docName.substring( 0, docName.indexOf('.') );
var docPath = docRef.path;
var largeur = app.activeDocument.width;
var hauteur = app.activeDocument.height;
var resolution = app.activeDocument.resolution;
var result = recadrage();
// On sauvegarde l'image au format PSD pour pouvoir revenir dessus
var psd_Options = new PhotoshopSaveOptions(); // [PhotoshopSaveOptions]
psd_Options.layers = true; // préserve les calques
psd_Options.embedColorProfile = true; // préserve le profil colorimétrique
psd_Options.annotations = true; // préserve les annotations
psd_Options.alphaChannels = true; // préserve les canaux alpha
psd_Options.spotColors = true; // préserve les encres
// Sauvegarde
docRef.saveAs( File(docPath + '/' + docName + ".psd" ), psd_Options, true );
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}
function recadrage(){
app.activeDocument.flatten(); // On aplatit les calques
// =======================================================
var idSbtF = charIDToTypeID( "SbtF" );
var desc8 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref2 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref2.putProperty( idChnl, idfsel );
desc8.putReference( idnull, ref2 );
var idT = charIDToTypeID( "T " );
var desc9 = new ActionDescriptor();
var idHrzn = charIDToTypeID( "Hrzn" );
var idRlt = charIDToTypeID( "#Rlt" );
desc9.putUnitDouble( idHrzn, idRlt, 0.000000 );
var idVrtc = charIDToTypeID( "Vrtc" );
var idRlt = charIDToTypeID( "#Rlt" );
desc9.putUnitDouble( idVrtc, idRlt, 0.000000 );
var idPnt = charIDToTypeID( "Pnt " );
desc8.putObject( idT, idPnt, desc9 );
var idTlrn = charIDToTypeID( "Tlrn" );
desc8.putInteger( idTlrn, 0 );
var idCntg = charIDToTypeID( "Cntg" );
desc8.putBoolean( idCntg, false );
executeAction( idSbtF, desc8, DialogModes.NO );
// =======================================================
var idInvs = charIDToTypeID( "Invs" );
executeAction( idInvs, undefined, DialogModes.NO );
// =======================================================
var idCrop = charIDToTypeID( "Crop" );
var desc10 = new ActionDescriptor();
executeAction( idCrop, desc10, DialogModes.NO );
}
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité