I have a script that changes the layer name of my illustrator file to "Test 1, Test 2, etc..." All I want to accomplish is to add leading zero to single digits. "Test 01, Test 02 ... Test 10, Test 11, etc..."
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++;
}
}
}
I found the following that would help but I'm not sure where to add it to the above code.
function pad(n) {
return (n < 10) ? ("0" + n) : n;
}
Total noob here so any help would be greatly appreciated. Thank you in advance!
You simply need to add the function that you already found at the end of your script (or at the beginning, it does not really matter) and then call it in the line, where the layer is named. So the whole script would look like this:
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;
}