【问题标题】:adobe illustrator script- check if swatch color is on listadobe illustrator 脚本 - 检查色板颜色是否在列表中
【发布时间】:2022-01-11 12:46:59
【问题描述】:

我正在尝试制作一个脚本,该脚本将通过样本列表并搜索名为“Line”的样本。 如果找不到,我想添加它,但如果已经找到,我希望忽略该脚本。

这是我到目前为止所做的,问题是如果它找到一个名为“Line”的样本,它会出于某种原因创建一个新的粉红色。

var doc = app.activeDocument;

for (i = 0; i < doc.swatches.length; i++)
{
   if (doc.swatches[i].name != "Line")
   {
       var newSpot = doc.spots.add();

        var newColor = new CMYKColor();
        newColor.cyan = 100;
        newColor.magenta = 100;
        newColor.yellow = 100;
        newColor.black = 100;

        newSpot.name = "Line";
        newSpot.colorType = ColorModel.SPOT;
        newSpot.color = newColor;
   }
}

【问题讨论】:

    标签: colors adobe adobe-illustrator


    【解决方案1】:

    您可以尝试先按名称选择颜色,只有在出现错误时才创建新颜色:

    var doc = app.activeDocument;
    
    try { var color = doc.swatches.getByName('Line') }
    
    catch(e) {
    
        var newColor = new CMYKColor();
            newColor.cyan    = 100;
            newColor.magenta = 100;
            newColor.yellow  = 100;
            newColor.black   = 100;
    
        var newSpot = doc.spots.add();
            newSpot.name      = 'Line';
            newSpot.colorType = ColorModel.SPOT;
            newSpot.color     = newColor;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-19
      • 2019-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-17
      相关资源
      最近更新 更多