JSX/Photoshop:图层不透明度问题



Photoshop CS6/JSX.我正在通过将所选图层增加或减少 10 来更改所选图层的不透明度。我遇到的问题:

当将值减少 10 时,我得到这种减少的安全性:

100 - 90 - 80 - 71 - 61 - 51 - 41 - 31 - 22 - 12 - 2

增加时,结果为:

0 - 10 - 20 - 31 - 41 - 51 - 61 - 71 - 82 - 92

代码是这样的:

var opc = app.activeDocument.activeLayer.opacity;
desc2.putUnitDouble(cTID('Opct'), cTID('#Prc'), opc - 10.0);
/* or
desc2.putUnitDouble(cTID('Opct'), cTID('#Prc'), opc + 10.0); */

关于如何修复它以仅获得 10 的倍数的任何想法?

提前致谢

Math.round() 可以解决问题。首先,强制图层的不透明度为圆形:

var opc = Math.round(app.activeDocument.activeLayer.opacity)

现在,您可以通过添加或减去所需的值来更改不透明度:

app.activeDocument.activeLayer.opacity = opc -10; //or +10

感谢安娜·福雷斯特的帮助。