尽管您不能使用javascript重命名字段,但您可以添加新字段并删除现有字段。您也可以剪切和粘贴文件。所以...
One。制定重命名脚本,例如:
var doc = app.activeDocs[0];
var fnames = new Array();
for (var i = 0; i < doc.numFields - 1; i++) {
fnames[i] = doc.getNthFieldName(i);
}
for (var i = 0; i < doc.numFields - 1; i++){
var f = doc.getField(fnames[i] + ".0");
var nfn = fnames[i].replace("1","2");
var rb = doc.addField(nfn,"radiobutton",0,f.rect)
for (var j = 1; j < 9; j++){//Add the other 8
f = doc.getField(fnames[i] + "." + j);
doc.addField(nfn,"radiobutton",0,f.rect)
}
rb.setExportValues([1,2,3,4,5,6,7,8,9]);
rb.borderStyle = f.borderStyle;
rb.strokeColor = f.strokeColor;
rb.fillColor = f.fillColor;
doc.removeField(fnames[i]);
console.println(fnames[i] + " to " + nfn);
}
注:
重命名字段可能更改getNthFieldName领域的秩序,所以得到这些第一。
一组单选按钮是一个字段(getField(“Groupname”)),要在同一组中使用getField(“Groupname.n”)获得第n个,则需要这些位置矩形。适用于所有的属性可以设置为enmase。
激活addField参数是:字段名,字段类型,页面,位置矩形)
在该实例中有9个单选按钮每组
两个英寸将要重命名的字段剪切并粘贴为空白pdf(我假设上面有一页)。运行脚本。剪下并粘贴回来。
您可能需要更改app.activeDocs [0]到app.activeDocs [1]或更换“DOC”和“本”,如果保留两个打开的文档运行脚本时
这一次得手,但后来我加了检查盒子,单选按钮和一个下拉列表,看看它是否适用于这些。在保存pdf并在记事本++中查看原始文本后,我不能再在原始文本中标识任何字段名称。找不到任何东西。虽然这是一个伟大的想法......这个问题困扰了我,毫不夸张地说,几年。 – jason 2017-08-22 14:34:25