我需要一个脚本来检查颜色设置

问题描述 投票:0回答:1

我需要一个脚本来检查颜色设置并更改为另一个颜色设置或在处理我的图片之前使用它

我发现监听器脚本可以加载 CSF 文件,但不知道如何检查颜色设置。

var idcolorSettings = stringIDToTypeID( "colorSettings" );

if (idcolorSettings == "Untitled1.CSF") //something wrong here
{
var idsetd = charIDToTypeID( "setd" );
    var desc38 = new ActionDescriptor();
    var idnull = charIDToTypeID( "null" );
       var ref13 = new ActionReference();
        var idPrpr = charIDToTypeID( "Prpr" );
        var idcolorSettings = stringIDToTypeID( "colorSettings" );
        ref13.putProperty( idPrpr, idcolorSettings );
        var idcapp = charIDToTypeID( "capp" );
        var idOrdn = charIDToTypeID( "Ordn" );
        var idTrgt = charIDToTypeID( "Trgt" );
        ref13.putEnumerated( idcapp, idOrdn, idTrgt );
    desc38.putReference( idnull, ref13 );
    var idT = charIDToTypeID( "T   " );
        var desc39 = new ActionDescriptor();
        var idUsng = charIDToTypeID( "Usng" );
        desc39.putPath( idUsng, new File( ".../AppData/Roaming/Adobe/Color/Settings/Untitled2.CSF" ) );
    var idcolorSettings = stringIDToTypeID( "colorSettings" );
    desc38.putObject( idT, idcolorSettings, desc39 );
executeAction( idsetd, desc38, DialogModes.NO );
load
}
else {
//will change another CSF file
}

请帮我解决它。

javascript jsx photoshop photoshop-script
1个回答
0
投票

冒着我误解你的问题的风险: 更改用户名或绝对路径以满足您的需要。将脚本应用到脚本事件管理器以打开新文档 - 这样您就不必每次打开脚本时都运行脚本。

// Switch off any dialog boxes
displayDialogs = DialogModes.ERROR; // OFF

load_colour_settings();

// Set Display Dialogs back to normal
displayDialogs = DialogModes.ALL; // NORMAL


function load_colour_settings()
{
  
  if (app.activeDocument.name.indexOf ("A") != -1)
  { 
    // load Untitled1.CSF 
    var colourFile = "C:\\Users\\USERNAME\\AppData\\Roaming\\Adobe\\Color\\Settings\\Untitled1.CSF";
  }
  else if (app.activeDocument.name.indexOf ("2") != -1) 
  { 
  // load Untitled2.CSF 
    var colourFile = "C:\\Users\\USERNAME\\AppData\\Roaming\\Adobe\\Color\\Settings\\Untitled2.CSF";
  }
  // None of the above? Don't do anything
  else return;

  // alert(colourFile);
  var idsetd = charIDToTypeID( "setd" );
  var desc38 = new ActionDescriptor();
  var idnull = charIDToTypeID( "null" );
  var ref13 = new ActionReference();
  var idPrpr = charIDToTypeID( "Prpr" );
  var idcolorSettings = stringIDToTypeID( "colorSettings" );
  ref13.putProperty( idPrpr, idcolorSettings );
  var idcapp = charIDToTypeID( "capp" );
  var idOrdn = charIDToTypeID( "Ordn" );
  var idTrgt = charIDToTypeID( "Trgt" );
  ref13.putEnumerated( idcapp, idOrdn, idTrgt );
  desc38.putReference( idnull, ref13 );
  var idT = charIDToTypeID( "T   " );
  var desc39 = new ActionDescriptor();
  var idUsng = charIDToTypeID( "Usng" );
  desc39.putPath( idUsng, new File( colourFile ) );
  var idcolorSettings = stringIDToTypeID( "colorSettings" );
  desc38.putObject( idT, idcolorSettings, desc39 );
  executeAction( idsetd, desc38, DialogModes.NO );
}
© www.soinside.com 2019 - 2024. All rights reserved.