Javascript Photoshop:循环直到达到所需的值
我运行下面的脚本,根据采样器拾取的颜色检查像素的亮度。然后自动调整曝光,直到所需像素的亮度达到235~Javascript Photoshop:循环直到达到所需的值,javascript,macos,photoshop,photoshop-script,Javascript,Macos,Photoshop,Photoshop Script,我运行下面的脚本,根据采样器拾取的颜色检查像素的亮度。然后自动调整曝光,直到所需像素的亮度达到235~ //获取颜色采样器值 var colorSampler=app.activeDocument.colorSamplers[0]; //RGB值 var Red=colorSampler.color.rgb.Red var Green=colorSampler.color.rgb.Green var Blue=colorSampler.color.rgb.Blue var RGB=[红、绿、蓝
//获取颜色采样器值
var colorSampler=app.activeDocument.colorSamplers[0];
//RGB值
var Red=colorSampler.color.rgb.Red
var Green=colorSampler.color.rgb.Green
var Blue=colorSampler.color.rgb.Blue
var RGB=[红、绿、蓝];
//获得亮度
var平均光度=[(红+绿+蓝)/3];
卢马切克();
函数LumaCheck(){
if(平均光度<215){
Luma20();
}否则如果(平均光度<225){
Luma10();
}否则如果(平均光度<230){
Luma5();
}else if(平均光度<233){
Luma1();
}else if(平均光度<235){
Luma1();
Luma1();
}else(平均光度>=235){
//无所事事
}
}
就实际循环而言,类似这样的方法可以工作,但会有很多开销:
var avrLum=0
就实际循环而言,对于(var i=0;i,类似的操作可能会起作用,但会有很多开销:
var avrLum=0
对于(var i=0;i1),是否有更大的代码块在其他地方使用averageluminity
作为数组,或者这一行是错误的
//Get Luminosity
var averageLuminosity = [(Red + Green + Blue)/3 ];
在这里,您使用一个值创建一个数组,但稍后将此数组与一个值进行比较
(二)
一旦达到235,在任何红/绿或蓝通道中,它停止
提供的代码不是这样工作的,如果我将color设置为255255,0
,averageLuminosity
等于170,Luma20()代码>开始执行。此外,在您的代码中,没有只与一种颜色分量进行比较,因此我不确定这是如何实现的。1)是否有更大的代码块在其他地方使用averageluminity
作为数组,或者这一行是错误的
//Get Luminosity
var averageLuminosity = [(Red + Green + Blue)/3 ];
在这里,您使用一个值创建一个数组,但稍后将此数组与一个值进行比较
(二)
一旦达到235,在任何红/绿或蓝通道中,它停止
提供的代码不是这样工作的,如果我将color设置为255255,0
,averageLuminosity
等于170,Luma20()代码>开始执行。另外,在您的代码中,只有一个颜色组件没有比较,所以我不确定这是怎么可能的。终于有机会测试了!可悲的是,它也无限循环:(终于有机会测试它了!可悲的是,它也无限循环:(