【问题标题】:ExtendScript Toolkit CCC - Adding a leading zero if only a single digit is foundExtendScript Toolkit CCC - 如果只找到一个数字,则添加前导零
【发布时间】:2017-05-23 04:05:03
【问题描述】:

我有一个脚本,可以将我的 illustrator 文件的图层名称更改为“测试 1、测试 2 等……”我想要完成的只是将前导零添加到单个数字。 “测试 01、测试 02……测试 10、测试 11 等……”

var doc = app.activeDocument;  

idLayers("Test "); // Rename visible layers 


// Hidden layers will be skipped and not counted
function idLayers(prefix){ 
  var counter = 1; 
  for(i=0;doc.layers.length>i;i++){ 
    var currentLayer = doc.layers[i]; 

    // if layer is visible...
    if (currentLayer.visible) {
      currentLayer.name= prefix + counter;
      counter++;  
    }

  }  
}    

我发现以下内容会有所帮助,但我不确定将其添加到上述代码的何处。

function pad(n) {
    return (n < 10) ? ("0" + n) : n;
}

这里的总菜鸟,所以任何帮助将不胜感激。提前谢谢!

【问题讨论】:

    标签: macos adobe adobe-illustrator extendscript leading-zero


    【解决方案1】:

    您只需要在脚本的末尾添加您已经找到的函数(或者在开头,这并不重要),然后在命名层的行中调用它。所以整个脚本看起来像这样:

    var doc = app.activeDocument;  
    
    idLayers("Test "); // Rename visible layers 
    
    
    // Hidden layers will be skipped and not counted
    function idLayers(prefix){ 
      var counter = 1; 
      for(i=0;doc.layers.length>i;i++){ 
        var currentLayer = doc.layers[i]; 
    
        // if layer is visible...
        if (currentLayer.visible) {
          currentLayer.name= prefix + pad(counter);
          counter++;  
        }
    
      }  
    }
    
    function pad(n) {
      return (n < 10) ? ("0" + n) : n;
    }
    

    【讨论】:

    • 我什么都有,除了“pad(counter)”部分。工作完美。感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-03
    • 2018-07-08
    • 1970-01-01
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多