Copy link to clipboard
Copied
Assuming that the layer name is "Layer 0", how I flip it horizontally or vertically?, keeping the anchor point in center
Copy link to clipboard
Copied
You can accomplish everything with ScriptingListener
this and for horizontal
// =======================================================
var idsetd = charIDToTypeID( "setd" );
var desc22 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref9 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref9.putProperty( idChnl, idfsel );
desc22.putReference( idnull, ref9 );
var idT = charIDToTypeID( "T " );
var idOrdn = charIDToTypeID( "Ordn" );
var idAl = charIDToTypeID( "Al " );
desc22.putEnumerated( idT, idOrdn, idAl );
executeAction( idsetd, desc22, DialogModes.NO );
// =======================================================
var idTrnf = charIDToTypeID( "Trnf" );
var desc23 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref10 = new ActionReference();
var idLyr = charIDToTypeID( "Lyr " );
var idOrdn = charIDToTypeID( "Ordn" );
var idTrgt = charIDToTypeID( "Trgt" );
ref10.putEnumerated( idLyr, idOrdn, idTrgt );
desc23.putReference( idnull, ref10 );
var idFTcs = charIDToTypeID( "FTcs" );
var idQCSt = charIDToTypeID( "QCSt" );
var idQcsa = charIDToTypeID( "Qcsa" );
desc23.putEnumerated( idFTcs, idQCSt, idQcsa );
var idOfst = charIDToTypeID( "Ofst" );
var desc24 = new ActionDescriptor();
var idHrzn = charIDToTypeID( "Hrzn" );
var idPxl = charIDToTypeID( "#Pxl" );
desc24.putUnitDouble( idHrzn, idPxl, 0.000000 );
var idVrtc = charIDToTypeID( "Vrtc" );
var idPxl = charIDToTypeID( "#Pxl" );
desc24.putUnitDouble( idVrtc, idPxl, 0.000000 );
var idOfst = charIDToTypeID( "Ofst" );
desc23.putObject( idOfst, idOfst, desc24 );
var idWdth = charIDToTypeID( "Wdth" );
var idPrc = charIDToTypeID( "#Prc" );
desc23.putUnitDouble( idWdth, idPrc, -100.000000 );
var idIntr = charIDToTypeID( "Intr" );
var idIntp = charIDToTypeID( "Intp" );
var idBcbc = charIDToTypeID( "Bcbc" );
desc23.putEnumerated( idIntr, idIntp, idBcbc );
executeAction( idTrnf, desc23, DialogModes.NO );
// =======================================================
var idsetd = charIDToTypeID( "setd" );
var desc25 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref11 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref11.putProperty( idChnl, idfsel );
desc25.putReference( idnull, ref11 );
var idT = charIDToTypeID( "T " );
var idOrdn = charIDToTypeID( "Ordn" );
var idNone = charIDToTypeID( "None" );
desc25.putEnumerated( idT, idOrdn, idNone );
executeAction( idsetd, desc25, DialogModes.NO );
this for the vertical
// =======================================================
var idsetd = charIDToTypeID( "setd" );
var desc26 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref12 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref12.putProperty( idChnl, idfsel );
desc26.putReference( idnull, ref12 );
var idT = charIDToTypeID( "T " );
var idOrdn = charIDToTypeID( "Ordn" );
var idAl = charIDToTypeID( "Al " );
desc26.putEnumerated( idT, idOrdn, idAl );
executeAction( idsetd, desc26, DialogModes.NO );
// =======================================================
var idTrnf = charIDToTypeID( "Trnf" );
var desc27 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref13 = new ActionReference();
var idLyr = charIDToTypeID( "Lyr " );
var idOrdn = charIDToTypeID( "Ordn" );
var idTrgt = charIDToTypeID( "Trgt" );
ref13.putEnumerated( idLyr, idOrdn, idTrgt );
desc27.putReference( idnull, ref13 );
var idFTcs = charIDToTypeID( "FTcs" );
var idQCSt = charIDToTypeID( "QCSt" );
var idQcsa = charIDToTypeID( "Qcsa" );
desc27.putEnumerated( idFTcs, idQCSt, idQcsa );
var idOfst = charIDToTypeID( "Ofst" );
var desc28 = new ActionDescriptor();
var idHrzn = charIDToTypeID( "Hrzn" );
var idPxl = charIDToTypeID( "#Pxl" );
desc28.putUnitDouble( idHrzn, idPxl, 0.000000 );
var idVrtc = charIDToTypeID( "Vrtc" );
var idPxl = charIDToTypeID( "#Pxl" );
desc28.putUnitDouble( idVrtc, idPxl, 0.000000 );
var idOfst = charIDToTypeID( "Ofst" );
desc27.putObject( idOfst, idOfst, desc28 );
var idHght = charIDToTypeID( "Hght" );
var idPrc = charIDToTypeID( "#Prc" );
desc27.putUnitDouble( idHght, idPrc, -100.000000 );
var idIntr = charIDToTypeID( "Intr" );
var idIntp = charIDToTypeID( "Intp" );
var idBcbc = charIDToTypeID( "Bcbc" );
desc27.putEnumerated( idIntr, idIntp, idBcbc );
executeAction( idTrnf, desc27, DialogModes.NO );
// =======================================================
var idsetd = charIDToTypeID( "setd" );
var desc29 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref14 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref14.putProperty( idChnl, idfsel );
desc29.putReference( idnull, ref14 );
var idT = charIDToTypeID( "T " );
var idOrdn = charIDToTypeID( "Ordn" );
var idNone = charIDToTypeID( "None" );
desc29.putEnumerated( idT, idOrdn, idNone );
executeAction( idsetd, desc29, DialogModes.NO );
Copy link to clipboard
Copied
This might be easier.
This is from this thread..
Copy link to clipboard
Copied
SuperMerlin‌
I tried that, but it doesn't let me target a specific layer by name. It be default flips the bottom layer, any workaround?
Copy link to clipboard
Copied
It works on the active layer, you must select the layer first.
Get ready! An upgraded Adobe Community experience is coming in January.
Learn more