2017-06-28 70 views
1

我正在嘗試編寫一個應用程序,以使用JavaScript在Photoshop中構建圖像的數字「映射」。基本上這涉及使用colorSampler來獲取某個像素的RGB值,將值存儲在一個對象中並移動到下一個像素上。除了當我到10個讀數(即信息面板已滿)我得到的所有工作正常。使用腳本在Photoshop中清除顏色樣本

「命令‘讓’是當前不可用」

任何想法如何我?可以通過腳本清除色樣,這樣的進程能夠繼續下去,或做不到這一點,任何人都可以想到的任何變通辦法或黑客的

腳本,因爲它代表如下:

var vertical_pass = {}; 

for(i=0; i<=10; i++){ 

    // set sampler position 
    var theSampler = app.activeDocument.colorSamplers.add([0 + i, 1]); 

    // Add readings from sampler to object 
    vertical_pass["vp_" + i] = { 
     "x": i, 
     "y": 1, 
     "r": Math.round(theSampler.color.rgb.red), 
     "g": Math.round(theSampler.color.rgb.green), 
     "b": Math.round(theSampler.color.rgb.blue) 
    }; 

    alert(
     "x coords: " + vertical_pass["vp_" + i]["x"] + 
     ". y coords: " + vertical_pass["vp_" + i]["y"] + 
     ". red: " + vertical_pass["vp_" + i]["r"] + 
     ". green: " + vertical_pass["vp_" + i]["g"] + 
     ". blue: " + vertical_pass["vp_" + i]["b"] 
    ); 
} 

回答

2

更妙的是,在開始前消除所有的樣品:

app.activeDocument.colorSamplers.removeAll(); 
+0

就看到了這一點 - 感謝;-) – Stef

0

不用擔心 - 找到解決方案 - 只需添加:theSampler.remove();在for循環結束之前;-) Doh!