简体   繁体   中英

How to crop a layer in photoshop script

I am having problems in a very simple task in photoshop script, but I am afraid this is not documented elsewhere on the web.

I just want to invert an existing selection, delete the content of the current layer, and then invert back the selection.

Of course this is part of a larger program, and if you are interested, i can provide all details.

Up to know i am making:

// Get current document and current layer
var doc = app.activeDocument;
var activeLay = doc.activeLayer;

var a=0
// find the current layer and assign its code to the variable a

for(i=doc.layers.length-1; i >=0; )
{         
  if(doc.layers[i]==activeLay)
  {
      a=i;
      alert("a"+a);
      break;
  } 
  else{ i--; }
  alert ("i"+i);
}

// Now cycle remaining layer under the exsiting one, and jump the selection
// and delete the outer area of selection for each layer

for(i=a-1; i >=0;)
{
// make layer i active
doc.activeLayer=doc.layers[i];
alert ("active layer"+i);
// where is my selection in regards to the active layer?
var s = app.activeDocument.selection.bounds;
var xSo=s[0];
var ySo=s[1];

var xLo = activeLay.bounds[0].value;  
var yLo = activeLay.bounds[1].value;    

// I have to go from actual selection poisition to the NEXT layer... which i just made active...
DeltaX=xLo-s[0];
DeltaY=ySo-s[1];
doc.selection.translateBoundary(DeltaX,DeltaY);

//Now invert selection and delete
doc.selection.invert
doc.selection.fill (fillType, mode, 0, preserveTransparency) // ??? here what i cannot do?
doc.selection.invert
i--;
}

I found the answer myself... it is merely

//Now invert selection and delete
doc.selection.invert;
doc.selection.cut();
doc.selection.invert;

my problem was that i didn't know that javascript is case sensitive, and hence .cut() didn't' work for when i misspelled it.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM