Tricky problem. Opening RAW with Javascript. White balance problem.
Hi all. Hopefully someone can help with this - its a tricky one.
I've been using a javascript to send RAW and DNG files to Photoshop CS5 for automatic processing. The script opens the files directly into PS, apparently bypassing Adobe Camera Raw. It always renders the photos with the ACR default settings which can be set in either ACR on Lightroom. The standard Adobe settings are WB (As Shot), Brightness (+50), Contrast (+25).
My problem is that it ignores any changes I have made to the RAW files in ACR. So if I want to use a custom white balance, its not possible to use the javascript. The script ignores the 'custom' white balance and resets it to 'As Shot'.
I've tried changing the default values in ACR but the options are As Shot, or a set Kelvin preset such as Tungsten, Sunlight etc. Nothing helps.
Is it possible for the script to be mindful of the custom adjustments - especially subtle changes to WB - that I have made in ACR?
The script is below...
var stacks = app.document.stacks;
var stackCount = stacks.length;
for(var s = 0;s<stackCount;s++){
var stackFiles = getStackFiles( stacks );
if(stackFiles.length> 1){
var bt = new BridgeTalk;
bt.target = "photoshop";
var myScript = ("var ftn = " + psRemote.toSource() + "; ftn("+stackFiles.toSource()+");");
bt.body = myScript;
bt.onResult = function( inBT ) {myReturnValue(inBT.body); }
bt.send(500);
}
}
function getStackFiles( stack ){
var files = new Array();
for( var f = 0; f<stack.thumbnails.length;f++){
files.push(stack.thumbnails
}
return files;
};
function myReturnValue(str){
res = str;
}
function psRemote(stackFiles){
var loadLayersFromScript = true;
var strPresets = localize ("$$$/ApplicationPresetsFolder/Presets=Presets");
var strScripts = localize ("$$$/PSBI/Automate/ImageProcessor/Photoshop/Scripts=Scripts");
var strFile2Stack = "Load Files into Stack.jsx";
var ipFilePath = app.path + "/" + strPresets + "/" + strScripts + "/" + strFile2Stack;
var ipFile = new File (ipFilePath);
$.evalFile( ipFile );
loadLayers.intoStack(stackFiles);
app.doAction ('My Action');
var saveFile = new File('~/desktop/'+(new Date().getTime().toString())+'.psd');
app.activeDocument.saveAs(saveFile);
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}
