裁剪而不删除裁剪像素? - Photoshop 扩展脚本

Crop without deleting cropped pixels? - Photoshop ExtendScript

当您使用裁剪工具时,会出现一个标记为“删除裁剪像素”的复选框。

如果您编写裁剪脚本,它会删除裁剪后的像素。你如何禁用它?

我本以为会有一个布尔参数,但事实并非如此:

下面是一个包含在函数中的 ScriptingListener 代码示例,其中包含用于删除裁剪像素的选项:

crop({
  left: 100,
  top: 100,
  right: 300,
  bottom: 300,
  deleteCropped: false
});

function crop(data)
{
  if (data.deleteCropped == undefined) data.deleteCropped = true; // default value

  var desc = new ActionDescriptor();
  var descRectangle = new ActionDescriptor();
  descRectangle.putUnitDouble(charIDToTypeID('Top '), charIDToTypeID('#Pxl'), data.top);
  descRectangle.putUnitDouble(charIDToTypeID('Left'), charIDToTypeID('#Pxl'), data.left);
  descRectangle.putUnitDouble(charIDToTypeID('Btom'), charIDToTypeID('#Pxl'), data.bottom);
  descRectangle.putUnitDouble(charIDToTypeID('Rght'), charIDToTypeID('#Pxl'), data.right);
  desc.putObject(charIDToTypeID('T   '), charIDToTypeID('Rctn'), descRectangle);
  desc.putUnitDouble( charIDToTypeID('Angl'), charIDToTypeID('#Ang'), 0.000000 );
  desc.putBoolean(charIDToTypeID('Dlt '), data.deleteCropped);
  executeAction(charIDToTypeID('Crop'), desc, DialogModes.NO);
} // end of crop()