1

我正在尝试制作一个脚本,根据我的输入重命名 Adob​​e Illustrator 中的选定图层。只有当你从字母“A”开始时,我才设法让它工作。例如,如果我从字母“B”开始,它会跳过第一层(因为它将是“A”)并且仅从第二层开始重命名(如果我尝试使用“C”,则跳过第一层两层,依此类推……)。有没有办法..重置计数器,所以重命名可以从选择的第一层开始?

这是我的代码:

var doc = app.activeDocument,
sel = doc.selection,
rename = prompt("Enter the name:","");
done = 0;

var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var r = /\[\w+\]/i;
var matching = rename.match( r );

var letter = str.search( matching );

if (letter>=0)
{
   for(i=letter; i<sel.length;i++)
   {

        var nextChar = str.charAt(i);

      if(nextChar){
            theRenaming=rename.replace(/\[\w+\]/, nextChar);
            sel[i].name = theRenaming;
            letter++;
            // document.write(theRenaming);
        }
        else
        sel[i].name = rename;
   }    

  //console.log(letter);
} else 
{
alert("Nothing Found!");
}

它是这样工作的:选择图层后,此脚本将要求您输入名称(例如:图层 [A]).. 它会找到图层并将其重命名为图层 A(删除括号)并遍历基于字母的关于选择长度。

我的问题:如果它是字母 B 或 C 或 H,它将开始仅重命名第二层或第三层,分别为第 8 层,我希望它从第一层开始以 B 开头,依此类推。

4

0 回答 0