Photoshop:循环直至达到所需的值

时间:2019-03-11 22:29:38

标签: javascript macos photoshop photoshop-script

我运行以下脚本,根据选择的“颜色采样器”检查像素的亮度。然后自动调整曝光,直到所需像素的光度达到235〜。

//Get color sampler values
var colorSampler = app.activeDocument.colorSamplers[0];

//RGB values
var Red = colorSampler.color.rgb.red
var Green = colorSampler.color.rgb.green
var Blue = colorSampler.color.rgb.blue
var RGB = [ Red, Green, Blue ];

//Get Luminosity
var averageLuminosity = [(Red + Green + Blue)/3 ];
    

LumaCheck();

function LumaCheck () {
    if (averageLuminosity < 215) {
        Luma20();
    } else if (averageLuminosity < 225) {
        Luma10();
    } else if (averageLuminosity < 230) {
        Luma5();
    } else if (averageLuminosity < 233) {
        Luma1();
    } else if (averageLuminosity < 235) {
        Luma1();
        Luma1();
    } else (averageLuminosity >= 235) {
    //do nothing    
    }
}

它在白色上效果很好,但是在彩色像素上却很挣扎:像素的RGB值非常不同。只要到达红色,绿色或蓝色通道中的任何一个通道的235,它就会停止。

所有 RGB值达到“大于或等于235”之前,您将如何继续创建循环?

我尝试做一个简单的循环,但是它不会停止。如果有人能指出我正确的方向,将不胜感激!

while (averageLuminosity < 235) {
    Luma1();
    if (averageLuminosity >= 235)
        break;
}

0 个答案:

没有答案